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



Листинг 8.3. Командный файл для для создания программы из двух частей

ml /с /coff main.asm simpson.asm

link /SUBSYSTEM:CONSOLE main.obj simpson.obj

От уже привычного нам amake.bat он отличается тем, что компилирует сразу два файла main.asm и simpson.asm и затем объединяет в один исполняемый два объ­ектных файла main.obj и simpson.obj.

Программирование ППЗУ

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

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

Симптоматичные двоичные суммы (системные) вдобавок могут быть 8- и 64-байтными. Наиболее старший (наиболее крайний) бит симптоматичного цифры выводится как шифр этого числа: 0 - ложь, 1 - истина. Неблагоприятные цифры представляются в типовом двоичном прибавочном шифре. Оттого что больший разряд знакового числа употребляется для маркировки символа, интервал индикации 16-байтных знаковых чисел от - 119 до + 127. 16-битово натуральное значение представляется в охвате от - 19990 до + 19991. Нуль значится большим числом. Для знаковых значений имеют возможность реализовываться функции суммирования, вычета, возвышения и деления.

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


назад далее