Регистры процессораИтак поговорим о регистрах процессора что они из себя представляют и для чего они нужны. Есть регистры процессора общего назначения.
EAX (Accumulator register - аккумулятор). Применяется для хранения промежуточных данных также иногда обязателен в использование некоторых API функциях и прерываниях. EBX (Base register - база). Применяется для хранения базового адреса некоторого объекта в памяти. ECX (Count register - счетчик). Применяется в командах,для множественно выполнения одних и тех же команд. ( циклы ) EDX (DATA register - регистр данных). Тоже самое что и eax регистр.
Размер регистра eax = 4 байтам или 32 битам. ax = 2 байтом или 16 битам. al , ah = 1 байту или 8 битам.
Регистры указателей процессора ESI - Указатель на следующую команду которую выполнит процессор. CS - сегмент кода о сегментах мы поговорим позже когда я вам буду рассказывать о адресации памяти в реальном режиме и в WIN32. Оба регистра работают в паре ! и сегменты по прежнему 16 битные регистры процессора. ESI - Индекс источника. EDI -Индекс приемника. EBP - Указатель базы. ESP - Указатель стека. указатели используются как это не странно для того чтобы указывать на ячейку в сегменте вот пример MOV ds:[esi] , edx ; команда пересылает значение из регистра edx по адресу esi относительно ds о команде mov мы поговорим подробней позже.
Сегментные регистры процессора cs - сегмент кода. ds - сегмент данных. es - сегмент дополнительных данных. fs - сегмент дополнительных данных. gs - сегмент дополнительных данных. SS - сегмент стека.
Флаги процессора Также есть флаги размер 4 байта или 32 бита. Для чего они нужны вообще я планирую этому посветить отдельную тему так как она достаточна сложна но в кратце я расскажу вам некоторые команды смотрят на флаги и в зависимости установлен тот или иной флаг прыгает или игнорирует прыжок например команда jz также некоторые команды после их выполнения изменяют флаги например команда cmp . Таким образом в ассемблере достигается многолинейнасть программ - это когда в зависимости от данных выполняется то или иное действие ! на этом пока что все. В следующей теме мы узнаем адресацию памяти защищенного режима процессора. |