18 Июн 2026, Чт

МиМ. Регистры процессора x86

Основные регистры (16-бит)

FLAGS: Регистр флагов (состояние процессора, результаты операций). 

Регистры общего назначения (РОН):

AX (Accumulator): Арифметика, ввод-вывод. Можно использовать как AH (старший байт) и AL (младший байт).
BX (Base): Базовый адрес.
CX (Count): Счётчик (для циклов, сдвигов).
DX (Data): Данные, умножение/деление, порты ввода-вывода.
SI (Source Index): Индекс источника (строковые операции).
DI (Destination Index): Индекс приемника (строковые операции).
BP (Base Pointer): Указатель базы стека.
SP (Stack Pointer): Указатель вершины стека.

Сегментные регистры:

CS (Code Segment): Сегмент кода.
DS (Data Segment): Сегмент данных.
SS (Stack Segment): Сегмент стека.
ES (Extra Segment): Дополнительный сегмент.
FS, GS: Дополнительные сегменты (появились с 80386).

Специальные регистры:

IP (Instruction Pointer): Указатель следующей команды.

Основные регистры (32 бит)

EAX (Accumulator): для арифметических операций
ECX (Counter): для хранения счетчика цикла
EDX (Data): для арифметических операций и операций ввода-вывода
EBX (Base): указатель на данные
ESP (Stack pointer): указатель на верхушку стека
EBP (Base pointer): указатель на базу стека внутри функции
ESI (Source index): указатель на источник при операциях с массивом
EDI (Destination index): указатель на место назначения в операциях с массивами
EIP: указатель адреса следующей инструкции для выполнения
EFLAGS: регистр флагов, содержит биты состояния процессора

Основные регистры (64 бит)

Схема взята отсюда: https://metanit.com/assembler/tutorial/1.3.php

Мы используем cookie-файлы для наилучшего представления нашего сайта. Продолжая использовать этот сайт, вы соглашаетесь с использованием cookie-файлов.
Принять