
【计】 tow address computer
twin; two
【计】 binary-coded decimal; binary-coded decimal character code
binary-to-decimal conversion; binary-to-hexadecimal conversion
【医】 bi-; bis-; di-; duo-
【计】 address computation
chance; crucial point; engine; machine; occasion; organic; pivot; plane
flexible
【医】 machine
二地址计算机(Two-address Computer)是一种特定指令集架构(ISA)的计算机系统,其核心特征在于其机器指令格式的设计。在二地址计算机中,每条指令通常包含一个操作码(Opcode)和两个地址字段。这两个地址字段主要用于指定参与运算的两个操作数(源操作数)的位置,而运算结果通常默认存储在这两个地址中的一个(覆盖其中一个源操作数),或者存储在一个隐含的寄存器中(如累加器)。
指令格式:
[操作码] [地址A] [地址B]
操作执行过程:
ADD A, B
为例:ADD
。A
,从内存或寄存器中取出第一个操作数(Operand1)。B
,从内存或寄存器中取出第二个操作数(Operand2)。Operand1 + Operand2
。A
或 B
指定的位置(通常是覆盖其中一个源操作数),或者存储在一个特定的、隐含的寄存器(如累加器)中。 这是二地址指令的关键特征之一。与其它地址结构的对比:
OP A, B, C
(例如 ADD C, A, B
表示 C = A + B
)。结果存储在第三个显式指定的地址 C
中,不破坏源操作数 A 和 B。OP A
(例如 ADD A
表示 Accumulator = Accumulator + [A]
)。通常需要一个隐含的累加器(Accumulator)寄存器作为默认的一个操作数和结果的存储位置。OP
(例如 ADD
表示从堆栈顶弹出两个数相加,结果压回栈顶)。操作数通过堆栈机制隐式提供。历史上许多著名的计算机系统采用了二地址指令集或混合指令集(包含大量二地址指令),例如:
ADD R1, R2
表示 R2 = R1 + R2
)。根据 Andrew S. Tanenbaum 在 Structured Computer Organization 中的描述,PDP-11 的指令集设计是其成功的关键因素之一。ADD EAX, EBX
执行 EAX = EAX + EBX
(结果覆盖第一个操作数 EAX)。David A. Patterson 和 John L. Hennessy 在 Computer Organization and Design 系列著作中详细分析了 x86 指令格式的演变和特点。二地址计算机的核心在于其指令设计:每条指令显式指定两个操作数的位置(地址A和地址B)。运算结果通常存储在其中一个地址指定的位置或隐含寄存器中。这种架构在指令长度、编程灵活性和执行效率之间取得了一定的平衡,曾是历史上主流计算机架构(如 PDP-11, x86)的重要组成部分。理解二地址指令是理解经典计算机体系结构和指令集设计的关键。
主要参考来源:
二地址计算机是指指令系统中主要采用二地址指令的计算机体系结构。这种设计特点如下:
每条指令包含两个操作数地址,通常表示为:
操作码 + 地址A + 地址B
ADD R1, R2
表示将寄存器R1和R2的值相加,结果存入R1。ADD A
表示累加器与A相加)。ADD R1, R2, R3
)。PUSH
/POP
)。早期计算机(如PDP-8的部分指令)和嵌入式系统中常见,适合需要平衡指令密度与操作灵活性的场景。
二地址设计在编程便利性与硬件复杂度之间取得折衷,是现代计算机指令集的过渡形态之一,后续逐渐被更高效的三地址或寄存器-寄存器架构取代。
不收租金的衬胶钢管担子柄定期请求对二氮萘饿叫法麦尔氏法分支名字负偏压过渡沸腾衡定脉冲话器架互保公司硷性不足的积累数据坎科氏征控制轧制良好的可观性墨菲氏疗法偏摩尔体积铅酸酐燃料酒精塞-道二氏单位栅极加感死锁恢复炭砖田鼠头部伤害微少的