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



листинг 11.7) на ВА0Е01, то это будет соответствовать инструкции mov dx,010E, посылающей в регистр dx адрес не нулевой, а третьей буквы нашей фразы. И программа после такой за­мены должна показать на экране «могу молчать!».

Попробуем проделать такую замену с помощью Hiew. Для этого нужно перейти из режима дизассемблера в режим просмотра, просто нажав F2 еще раз. Затем необходимо включить режим изменения файла клавишей F3, после чего в нуле­вом байте файла появится курсор, который можно двигать клавишами <-, Т, i. Нам нужно передвинуть его к третьему (с учетом того, что нумерация на­чинается с нуля) байту, набрать на клавиатуре ОЕ и затем нажать F9, чтобы из­менения, сделанные Hiew, сохранились в файле.

Вот и все. Теперь программа, если ее запустить, показывает на экране «могу мол­чать!», и действительно, она молчаливо, почти не сопротивляясь, позволила себя изменить так, как нам хотелось.

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

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

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

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

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


назад