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



Наоборот, защищенный режим процессора инте­ресен тем, что программа работает с логическими адресами, а процессор незримо преобразует их в физические.

Наверное, вы уже догадались, что система Windows использует защищенный ре­жим работы процессора. Современные операционные системы и программы тре­буют столько памяти, что защищенный режим работы процессора стал гораздо «реальнее» его реального режима. А это значит, что программы, написанные для DOS, тоже выполняются в защищенном режиме, то есть адреса, бывшие некогда физическими, таковыми быть перестали. Программе для DOS операционная сис­тема выделяет логическое адресное пространство, которое не отличается от того, что было в реальном режиме. Но на самом деле система незаметно использует совсем другие адреса. Поскольку Windows — система многозадачная, она может выполнять одновременно множество программ для DOS, причем каждая DOS-программа чувствует себя так, как будто она одна выполняется процессором.

Арифметические команды

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

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

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

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


назад далее