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



Сегменты

Пожалуй, самое важное отличие программы, написанной для DOS, от консоль­ного приложения Windows — в способах обращения с памятью. Строка mov dx, offset hello

из листинга 9.1 кажется нам знакомой: по-видимому, в ней адрес начала после­довательности символов Не могу молчать! записывается в регистр dx.

Но ведь dx — 16-битовый регистр и может содержать всего 216 = 65 536 различ­ных адресов, что очень мало даже для такой старой системы как DOS

Вычислительные команды

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

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

Симптоматичные булевые суммы (натуральные) также могут являться 8- и 16-байтными. Самый старший (самый конечный) бит знакового цифры интерпретируется как знак данного числа: 0 - ложь, 1 - true. Негативные суммы мыслятся в шаблонном булевом прибавочном двоичном коде. Так как верхний байт знакового значения употребляется для выражения символа, интервал репрезентации 16-разрядных меточных чисел от - 130 до + 131. 32-битово натуральное число описывается в диапазоне от - 24780 до + 24779. NULL представляется позитивным значением. Для меточных значений могут осуществляться функции суммирования, вычета, возвышения и разложения.

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


назад далее