Автор Коля Москалёв задал вопрос в разделе Другие языки и технологии
Ассемблер, регистры процессора и получил лучший ответ
Ответ от Миоко Таканава[гуру]
Младшая половина регистра EAX - это AX.
Младший байт EAX - это AL.
Второй справа байт EAX - это AH (разряды 15 ...8).
Напрямую к старшей половине EAX обратиться нельзя, так как в системе команд процессора такая адресация не предусмотрена. Только с помощью сдвига на 16 бит вправо или через ОЗУ обращением со смещением в 2 байта.
Аналогично в 64-разрядном процессоре:
EAX - это младшая половина регистра RAX. К старшей половине тоже нельзя обратиться напрямую.
В новых 64-разрядных регистрах, например для регистра R8:
R8B - это младший байт регистра R8;
R8W - это младшее слово (два младших байта) регистра R8;
R8D - это младшая половина регистра R8.
Аналога AH (второго справа байта) у новых регистров нет.
Миоко Таканава
(51022)
Умножением - это не по-ассемблерному. Это делается логическим сдвигом.
Например, записать в EAX число 12345678h:
mov ax, 1234h
shl eax, 16
mov ax, 5678h
теперь в eax 12345678h.
Кроме сдвигов или прямой адресации в памяти существует ещё один, достаточно элегантный, способ обращения к старшему слову регистров - с помощью команды bswap.
Про ассемблер!! ! что такое РЕГИСТР?? ? и поподробнее...
Регистр - это определенный участок памяти внутри самого процессора, от 8-ми до 32-х бит длиной,
подробнее...
что такое регистр и реестр, и чем они различаются..
Регистр - это цифровая электронная схема, служит для временного хранения двоичных чисел (32-х
подробнее...
Что это в программировании?
Записать значение регистра "eax" в переменную "i" - mov i,eax // i:integer;
Записать значение
подробнее...
__thiscall что это и зачем нужно?
Соглашение вызова или модель вызова (англ. Calling convention) — часть двоичного интерфейса
подробнее...
Assembler
Вопрос 1
Вот макрос, генерирующий случайные числа от 0 до n-1. Алгоритм взят из модуля System
подробнее...
Что означает выражение "время молота"?
Stop! Hammertime! (Hammertime, Hammer time) — мем, имевший большую популярность в девяностых и
подробнее...
Что значит "функция возвращает значение" в С++?
Куда возвращает?
вызывающей ф-ии она возвращает
Зачем возвращает?
потом что ф-ия так
подробнее...
че означает «word ptr » на TASM
Турбо Ассемблер дает вам способ гибкого определения размера
данных в виде операций WORD PTR и
подробнее...
Что значит "возвращать значение" в языках программирования?
Представь, что ты пришел в ресторан, сел за столик и вызвал официанта (т. е. функцию)
подробнее...
Чем отличается озп регистровая DDR2 (Ecc) от обычной озп DDR2?
Модули памяти типа "Buffered", она же "Registered" оснащены регистрами (буферами) в адресных и
подробнее...
Что такое mov и xor? Что это такое? mov eax,23445678h xor eax,98755433h Что такое eax?
EAX это регистр, как краб указал. Можно считать что это что-то типа промежуточной переменной.
подробнее...
RAM. Написано "только ECC Server reg-dimm память... "
Это регистровая память (RDIMM). Если материнская плата ее поддерживает - пойдет. Если нет, не
подробнее...
как поставить символ верхнего и нижнего регистра в ворде 2003....
Таблица символов в помощь.. .
Пуск
Выполнить
подробнее...