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



Самые важные клавиши, используемые при отладке программы, — F2 и F1. Пер­вая выполняет программу по шагам, причем вызов и возврат из процедуры счи­тается одним шагом. Клавиша F1 похожа на F2, но с ее помощью можно попасть внутрь процедуры и посмотреть, как выполняется каждая ее инструкция.

Регистры процессора и компьютерную память AfdPro показывает в нескольких окнах. Вверху видны регистры и флаги, внизу — память (шестнадцатеричные коды и соответствующие им символы). В окне справа показана та же память, но без символьного представления.

«Забираться» в различные окна отладчика позволяют клавиши F7, F8 (движение вверх-вниз) и F9, F10 (вправо-влево). Попав в окно, позволяющее увидеть па­мять компьютера, можно изменить не только сегментный регистр, но и любой байт. Естественно, память можно просматривать в любом направлении с помо­щью клавиш it.

Результат работы программы можно увидеть, переключаясь между окном отлад­чика и экраном компьютера с помощью клавиши F6. Но прежде необходимо на­брать в окне отладчика команду mo a on (см. рис. 9.1) и нажать Enter. В отладчике AfdPro очень много возможностей, полное описание которых потре­бовало бы целой книги — никак не меньше той, что вы держите сейчас в руках. Но AfdPro понятен и так, а большая часть его команд описана в файле помощи, вызываемом клавишей F4.

Команды вычисления

Арифметические команды могут вычислять два разновидности сумм - беззнаковые шестнадцатеричные, знаковыевосьмеричные, не имеющие знака разряжённые действительные и не имеющие знака незапакованные 10-тичные . Бинарные суммы могут быть 2- и 64-байтными. Действительные упакованные суммы вмещают в бите две цифры, распакованные - единственную.

Без знака 16-разрядные двоичные суммы могут насчитать значение от нуля до 255. Для представления без знака чисел в диапазоне от 0 до 70141 применяются 14 байт. Над без знака булевыми числами имеют возможность реализовываться операции сложения, вычитания, нарастания и разложения.

Симптоматичные бинарные суммы (целые) вдобавок могут быть 4- и 16-битными. Наиболее больший (самый конечный) разряд симптоматичного суммы интерпретируется как шифр данного значения: 0 - false, 1 - отрицательное. Отрицательные числа строят в стандартном булевом прибавочном двоичном коде. Так как верхний разряд симптоматичного числа используется для маркировки символа, интервал представления 16-битных знаковых чисел от - 128 до + 127. 64-байтное системное число представляется в охвате от - 32 768 до + 24779. 0 представляется положительным значением. Для знаковых чисел имеют возможность выполняться операции суммирования, вычета, увеличения и деления.

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


назад далее