Вопросы по теме 'zero-extension'
Перенос значения меньшего размера в регистр
Я сохранил однобайтовое значение 8 и хочу переместить его в регистр rax . В настоящее время я делаю это с movzx , чтобы обнулить байт:
.globl main
main:
push %rbp
mov %rsp, %rbp
movb $8, -1(%rbp)
movzx -1(%rbp), %rax <--...
124 просмотров
schedule
07.09.2021
Как в этом случае знак инструкции MOVSX расширяет ввод?
У меня следующая разборка:
[назначение] = d5 cd e8 ca 68
movzx eax, [ebp+dest]
# value of edx at this point is: F7FBB898
movsx edx, al
# value of edx after this is: FFFFFFD5
# [ebp+var_E] stores 0
movzx eax, [ebp+var_E]
movsx eax, al
#...
208 просмотров
schedule
21.03.2022
Почему инструкции x86-64 для 32-битных регистров обнуляют верхнюю часть полного 64-битного регистра?
В x86-64 Tour of Intel Manuals я прочитал
Возможно, самым удивительным фактом является то, что такая инструкция, как MOV EAX, EBX , автоматически обнуляет старшие 32 бита регистра RAX .
В документации Intel (3.4.1.1 Регистры общего...
33253 просмотров
schedule
01.10.2022
В MIPS, когда использовать подписанное расширение, а когда использовать нулевое расширение?
Я разрабатываю процессор MIPS как свой индивидуальный проект, к настоящему времени я встретил очень запутанный вопрос. Я просто не могу резюмировать, когда использовать подписанное расширение, а когда использовать нулевое расширение в MIPS.
Я...
5840 просмотров
schedule
12.09.2023