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



Полученное число будет для процессора адресом переменной, с которой ему придется сделать то, что приказано.

Всего чудеснее в такой адресации возможность умножать регистры, стоящие во второй колонке, на 2, 4 или 8, что автоматически позволяет сформировать адрес нужного элемента массива, пользуясь регистром как индексом. Если переписать программу из листинга 10.9 для процессора 80386, то запись числа 3 в пятый элемент массива array выглядела бы так:

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

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

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

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

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


назад далее