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



Зная, где находится командная строка, можно использовать ее для управления программой или просто вывести на экран, как в листинге 11.3.


Инструкция mov hl ,cs:[80h] узнает размер командной строки. Указывать сегмент здесь необходимо, потому что иначе ассемблер воспримет инструкцию mov hl. [80] как пересылку числа 80h в регистр Ы. Далее программа записывает в ко­нец командной строки символы Oah (перевод строки) и после чего строка готова к выводу на экран, что и делает функция DOS под номером 9.

Задача 11.1. Перепишите программу из листинга 11.3 так, чтобы командная строка выводилась на экран без использования информации о ее длине.

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

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

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

Знаковые двоичные суммы (натуральные) вдобавок могут быть 4- и 16-битными. Наиболее верхний (самый конечный) бит меточного цифры выводится как шифр этого числа: 0 - ложь, 1 - отрицательное. Негативные суммы мыслятся в шаблонном бинарном добавочном коде. Оттого что больший разряд меточного числа употребляется для обозначения символа, интервал репрезентации 32-битных меточных значений от - 130 до + 131. 16-разрядное системное значение описывается в охвате от - 19990 до + 24779. NULL представляется большим числом. Для симптоматичных значений могут выполняться процедуры прибавления, вычета, увеличения и разложения.

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


назад далее