我是组装新手。这让我很困扰:如果处理器没有输入和输出的特殊指令怎么办?
x86的in
和out
指令或多或少是mov
指令的特例:
您可以说8088CPU的CCD_;min";模式实际上是引脚CCD_ 5。在这种情况下,指令mov al, [si]
用于从地址范围0-0FFFFFh读取字节,并且in al, dx
用于从地址区域100000h-10FFFFh读取字节。
mov [si], al
和out dx, al
也是如此。
因此8088可以访问0-10FFFFh的地址范围。80386可以访问和寻址0-10000FFFFh。
然而,在现实中,你不会谈论";地址范围100000h-10FFFFh";但是关于";I/O地址范围";。但原则是一样的。
没有in
或out
指令(ARM、PowerPC、MIPS、TriCore、V850、m68k、680x、6502…(的CPU只有一个地址范围。
连接到这样一个CPU的所有设备(键盘、UART、鼠标…(都有一个在此单个地址范围内的地址。
在这种情况下,使用等于x86指令mov al, [si]
的指令而不是指令in al, dx
(在这样的CPU上不存在(来访问这些设备。