Образовательная программа 6B06104 «Вычислительная техника и программное обеспечение»


SF (sign, знак). Содержит знак результата последней арифметической операции (0 – положительный, 1 – отрицательный). ZF



бет18/27
Дата19.10.2022
өлшемі10,77 Mb.
#153958
түріОбразовательная программа
1   ...   14   15   16   17   18   19   20   21   ...   27
Байланысты:
Lab raboty Arkhitektura i organizatsia EVM

SF (sign, знак). Содержит знак результата последней арифметической операции (0 – положительный, 1 – отрицательный).
ZF (zero, ноль). Указывает результат последней арифметической операции (0 – ненулевой результат, 1 – нулевой результат).
AF (auxiliary carry, вспомогательный перенос). Содержит бит, переносимый из третьего бита в четвертый бит в специализированных арифметических операциях.
PF (parity, четность). Указывает на число единичных битов в результате последней операции. Четное число битов устанавливает положительную четность, нечетное – отрицательную.
CF (carry, перенос). Содержит перенос из старшего разряда после последней арифметической операции. Содержит также значение последнего бита после операции сдвига и циклического сдвига (вращения).
Флаги в регистре Flags расположены в порядке, показанном ниже:
Флаги OF, SF, ZF и CF наиболее важны для программирования на ассемблере арифметических операций и операций сравнения, а DF – для строковых операций. Некоторые другие флаги используются для внутренних нужд, в основном связанных с защищенным режимом работы.


Память. Два типа внутренней памяти PC – это постоянная память (ПЗУ) и оперативная память (ОЗУ). Последняя также называется памятью с произвольным доступом. Байты в памяти нумеруются последовательно, начиная с 0, и каждый байт имеет свой уникальный адрес.
На рисунке 6 показана структура внутренней памяти PC с процессором 8086 в качестве простого примера. Из первого мегабайта памяти 640 килобайт – основная оперативная память, большая часть которой доступна для непосредственного использования.
Таблица 4.1

Структура ПЗУ персонального компьютера


Начало (десятичное)

Адрес (шестнадцатеричный)

Объем и назначение

960K

F0000

64 K – основное ПЗУ системы

768 K

C0000

192 K – расширенная область (ПЗУ)

640 K

A0000

128 K – видеопамять (ОЗУ)

0

00000

640 K (ОЗУ) – область BIOS.
Таблица векторов прерываний



ПЗУ состоит из специальных чипов, информация из которых, будучи однажды записана, в дальнейшем только считывается. В силу этого свойства записанные в таких чипах данные и инструкции не могут быть изменены (современные чипы ППЗУ – перезаписываемые, то есть могут быть изменены с помощью специальной программы).
ПЗУ BIOS (Basic Input/ Output System – основная система ввода/вывода) начинается с адреса 768 K и отвечает за устройства ввода/вывода, например, контроллер винчестера (жесткого диска). ПЗУ, начинающаяся с адреса 960 K, отвечает за основные функции компьютера, например, самопроверку при включении, рисование точек при выводе графики и загрузку операционной системы с диска. Когда вы включаете компьютер, ПЗУ управляет различными проверками и загрузкой специальных данных системы с диска в ОЗУ.
ОЗУ. Программиста в основном интересует оперативная память (ОЗУ – оперативное запоминающее устройство). В нее можно записывать и из нее можно считывать информацию. Память ОЗУ доступна в качестве «рабочего пространства» для временного хранения данных и выполнения программ. Когда вы включаете компьютер, часть операционной системы загружается с диска в ОЗУ. Выполняемая программа находится в памяти и обычно выводит информацию на экран, принтер или диск. После завершения программы операционная система может загрузить на ее место другую программу.
Выключение компьютера приводит к потере данных в ОЗУ, но не влияет на ПЗУ. Поэтому, если вы редактировали документ, вы должны сохранять его на диске перед выключением компьютера. Адресация данных в памяти. В зависимости от модели процессор может обращаться к одному или более байтам памяти. Рассмотрим десятичное число 1315. Шестнадцатеричное представление этого числа 0529H занимает два байта или одно слово в памяти. Слово состоит из старшего (более значащего) байта 05 и младшего (менее значащего) байта 29. Процессор хранит данные в памяти в инверсном порядке (reverse-byte sequence), то есть младший байт – в ячейке с меньшим адресом, а старший байт – в ячейке с большим адресом. Например, процессор передает значение 0529H из регистра в память по
адресам 04
A26H и 04A27H так:



Процессор подразумевает, что данные в памяти хранятся именно в инверсном порядке, и обрабатывает их соответствующим образом. Когда процессор извлекает данные из памяти, он переставляет байты, помещая их в регистр в виде hex 05 29. Хотя этот процесс полностью автоматизирован, вы должны помнить о нем при написании и отладке программ на ассемблере. Для записи числа в память компьютера предусмотрена ассемблерная команда mov, в качестве одного из аргументов которой в квадратных скобках записывается адрес в памяти, по которому нужно произвести запись или чтение, причем в память невозможно записать непосредственное число, можно записать только содержимое какого-либо регистра. Также для того, чтобы поместить данные в память, можно использовать команду push, единственным аргументом которой является регистр, который необходимо сохранить в памяти. Данные сохраняются по адресу, записанному в регистре SP – указатель стека. Для чтения данных из стека предусмотрена команда pop, аргументом которой является регистр, в который необходимо записать значение из памяти.




Достарыңызбен бөлісу:
1   ...   14   15   16   17   18   19   20   21   ...   27




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет