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



ехе-файлы, даже не заглядывая в исходные тексты, но нам до это­го далеко. Будем пока интересоваться кодированием инструкций перехода, что поможет нам понять, почему их создано так много.

Следующим по сложности переходом будет команда jmp, занимающая в памяти три байта и потому способная послать процессор на 32 768 байт назад и на 32 767 байт — вперед. Тот же самый отрывок программы, но уже с другим пере­ходом jmp, будет таким:

Программирование ППЗУ

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

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

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

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


назад далее