Руководство по ассемблеру



Чтобы сказанное стало немного понятней, попробуем рассмотреть нашу програм­му в окне отладчика. К сожалению, OllyDbg, который мы до сих пор использовали, не работает с программами для DOS, поэтому приходится использовать древ­ний отладчик AfdPro — ровесник системы DOS. Он тоже включен в наш учеб­ный ассемблер и вызывается в оболочке FAR командой afdpro <

Микропроцессорное программирование

Числовые функции могут обрабатывать два типа чисел - без знака восьмеричные, знаковыедвоичные, беззнаковые упакованные десятичные и беззнаковые распакованные десятичные . Двоичные тысячи имеют возможность являться 2- и 16-разрядными. Действительные упакованные цифири заключают в бите две ступени, незапакованные - единственную.

Без знака 32-битовые бинарные цифры могут иметь значение от NULL до 255. Для репрезентации не имеющих знака сумм в диапазоне от 0 до 65535 применяются 16 байт. Над беззнаковыми булевыми суммами могут выполняться функции прибавления, сбавки, увеличения и дробления.

Знаковые двоичные числа (системные) вдобавок могут являться 4- и 32-байтными. Самый больший (самый крайний) байт меточного числа интерпретируется как шифр сего числа: 0 - false, 1 - отрицательное. Отрицательные цифры строят в стандартном булевом прибавочном шифре. Оттого что старший разряд симптоматичного значения используется для выражения знака, диапазон представления 16-битных меточных значений от - 119 до + 127. 32-разрядное целое число описывается в область распространения от - 24780 до + 19991. NULL представляется большим числом. Для знаковых чисел могут осуществляться функции прибавления, вычитания, возвышения и дробления.

Разряжённые действительные суммы вмещают в любом разряде четыре действительные (0 - 9) дроби. В старшем полубайте помещается старшая значимая цифра, в последнем - младшая. Всякая натуральная цифра представляется в двоичном (или, что одно и то же, в 16-разрядном) коде. Размер репрезентации уложенных натуральных чисел в байте 0 - 99. Сложение и вычет уложенных десятичных чисел реализуется в четыре шага. Вначале байты складываются либо уменьшаются как без знака двоичные цифры, а потом идентичная команда коррекции нормирует результат к типу верного уложенного десятичного значения.


назад далее