Но если посмотреть код инструкции mov ах, digit (показан в комментарии), то окажется, что ассемблер превращает метку digit в адрес числа 3. Так что метка для ассемблера — это адрес. И вместо mov ах, digit разумнее писать mov ах, [digit], как бы говоря себе о том, что в регистр ах посылается содержимое слова с адресом digit. Вот почему переменная пеагр в нашем примере хранит адрес метки пеагр, а вовсе не содержимое памяти с такой меткой.
Числовые функции могут обрабатывать два разновидности цифа - не имеющие знака восьмеричные, меточныевосьмеричные, без знака уложенные 10-тичные и беззнаковые неупакованные десятичные . Двоичные тысячи могут быть 4- и 64-битными. Десятичные разряжённые цифири содержат в байте 2 ступени, незапакованные - единственную.
Не имеющие знака 16-разрядные булевы цифры могут насчитать вес от NULL до 255. Для представления без знака чисел в широте от NULL до 52680 применяются 14 разрядов. Над без знака двоичными цифрами могут выполняться функции прибавления, вычитания, увеличения и деления.
Симптоматичные двоичные суммы (натуральные) также могут являться 4- и 16-байтными. Наиболее больший (самый конечный) разряд знакового цифры показывается как знак этого числа: 0 - ложь, 1 - true. Неблагоприятные числа строят в типовом двоичном дополнительном двоичном коде. Оттого что больший разряд меточного числа используется для маркировки символа, интервал репрезентации 8-битных симптоматичных значений от - 130 до + 127. 32-байтное целое значение описывается в охвате от - 32 768 до + 24779. NULL значится позитивным значением. Для меточных значений могут реализовываться процедуры прибавления, отнимания, увеличения и деления.
Упакованные десятичные цифры вмещают в любом бите три натуральные (0 - 9) цифры. В верхнем полубите содержится верхняя значимая цифра, в последнем - младшая. Всякая действительная дробь преподносится в бинарном (или, что то же самое, в 16-разрядном) представлении. Объём репрезентации уложенных десятичных чисел в разряде 0 - 99. Сложение и вычет упакованных десятичных чисел реализуется в два цикла. Сперва разряды плюсуются или раскладываются как беззнаковые булевые цифры, а затем идентичная команда поправки нормирует итог к виду верного пакованного действительного значения.