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



Эта сумма может быть адресом, а может и не быть, и потому мы вольны ис­пользовать ее как угодно.

Но поскольку изначальный смысл инструкции lea все-таки в получении адреса, ее можно использовать так же, как и оператор offset. Инструкции:

mov bx. offset arr ;BB1400 MOV BX. 0014 lea bx. arr ;8D1E1400 LEA BX. [0014]

Число можно и вычесть, то есть возможен и такой адрес: [еах + edx8 — 42].

посылают в регистр bx одно и то же число — адрес, связанный с меткой агг. Но инструкция lea занимает больше места в памяти, и потому оператор offset мо­жет быть выгодней там, где эту память приходится экономить.

Логические команды

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

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

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

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


назад далее