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



Сама DllMain в нашем случае просто возвращает TRUE в регистре еах, потому что единственная процедура библиотеки ни в чем не нуждается (если возвратить FALSE, то библиотека просто не загрузится). Но в более сложных случаях потребуется знание параметров процедуры — точки входа. Формально их три, но последний не используется и всегда равен NULL. Первый параметр hlnstDLL — это дескрип­тор библиотеки, передаваемый ей операционной системой при загрузке

Арифметические команды

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

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

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

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


назад далее