8085微处理器中的ORA R指令类型
在8085指令集中,ORA是一个助记符,代表“或累加器”,而“R”代表以下任何寄存器,或由HL对指向的内存位置M。
R = A, B, C, D, E, H, L, or M
此指令用于将R的内容与累加器进行或运算。或运算的结果将存储回累加器。由于R可以有八个值中的任何一个,因此此类指令有八个操作码。它在内存中只占用1个字节。
助记符,操作数 | 操作码(十六进制) | 字节数 |
---|---|---|
ORA A | B7 | 1 |
ORA B | B0 | 1 |
ORA C | B1 | 1 |
ORA D | B2 | 1 |
ORA E | B3 | 1 |
ORA H | B4 | 1 |
ORA L | B5 | 1 |
ORA M | B6 | 1 |
让我们以ORA E指令为例。由于它是一条1字节指令,因此它将占用内存中的单个字节。假设累加器和E寄存器的初始内容分别为ABH和CDH。此指令执行的结果已显示在下面的跟踪表中。
执行前 | 执行后 | |
---|---|---|
(E) |
CDH | CDH |
(A) |
ABH | EFH |
(F) |
任意值 | Cy=0,AC=0,S=1,P=0,Z=0 |
内部计算如下所示:
(A) ABH ---> 1010 1011 (E) CDH ---> 1100 1101 --------- ORA E ---> 1110 1111 (EFH)
地址 | 十六进制代码 | 助记符 | 注释 |
---|---|---|---|
2004 | B3 | ORA E | A = A 或 E |
针对此指令ORA E执行的时序图如下:
总结 - 因此,此指令ORA E需要1个字节、1个机器周期(操作码提取)和4个T状态才能执行,如时序图所示。
广告