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



Попробуем, например, сравнить два почти одинаковых «стога», которые отлича­ются тем, что в одном есть иголка, а во втором — нет. Первый стог хранится в сег­менте hayl, второй — в сегменте hay2 (листинг 10.4).

Там инструкция scasb использовалась в консольном приложении Windows и потому не нуждалась в установке сегментных регистров ds и es.

Работа с функциями АЛУ

Числовые функции имеют возможность обрабатывать три вида чисел - беззнаковые двоичные, симптоматичныедвоичные, беззнаковые упакованные 10-тичные и без знака распакованные действительные . Бинарные тысячи имеют возможность быть 8- и 64-битными. 10-тичные упакованные суммы содержат в разряде 2 цифры, неупакованные - единственную.

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

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

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


назад далее