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



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

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

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

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

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

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

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


назад далее