什么是桌面CPU上的8位寄存器?

por*_*uod 2 cpu optimization x86 cpu-registers 8-bit

通过以下指令表手册阅读,我发现整数乘法通常要快得多8-bit registers.

在普通桌面CPU的上下文中,8-bit register意味着什么?存储在32位寄存器中的值是否恰好在8位范围内?没有实际的8位寄存器,对吗?

Gre*_*ill 8

有实际的8位寄存器,它们只是完整寄存器的一部分.例如,在Intel cpus上:

AL  8-bit
AH  8-bit
AX  16-bit
EAX 32-bit
RAX 64-bit
Run Code Online (Sandbox Code Playgroud)

在图片中:

63                             32      24      16       8       0
|-------|-------|-------|-------|-------|-------|-------|-------|
                                                        |<- AL->|
                                                |<- AH->|
                                                |<----- AX ---->|
                                |<------------ EAX ------------>|
|<---------------------------- RAX ---------------------------->|
Run Code Online (Sandbox Code Playgroud)