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



Программа из листинга 11.1 занимает всего 30 байт! Таких коротких программ мы еще не встречали, потому что формат .com не содержит никакой служебной информации, в нем хранятся только команды процессора и данные.

Лишь перед самым выполнением операционная система «пристраивает» к про­грамме, хранящейся в .corn-файле, заголовок, так называемый PSP (префикс программного сегмента), хранящий служебную информацию и занимающий ровно 256 байт (100 в шестнадцатеричной системе).

Команды ПЗУ

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

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

Симптоматичные бинарные числа (системные) вдобавок могут быть 2- и 16-разрядными. Самый больший (самый конечный) разряд знакового суммы выводится как символ сего числа: 0 - false, 1 - отрицательное. Негативные числа представляются в стандартном бинарном прибавочном двоичном коде. Оттого что больший бит знакового значения употребляется для выражения метки, масштаб репрезентации 8-байтных знаковых чисел от - 119 до + 131. 64-разрядное натуральное число преподносится в диапазоне от - 32 768 до + 32 767. NULL значится положительным значением. Для симптоматичных значений имеют возможность выполняться операции суммирования, отнимания, возвышения и дробления.

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


назад далее