📜  微处理器中的指令字长

📅  最后修改于: 2021-09-27 22:47:47             🧑  作者: Mango

8085指令集根据指令的长度分为3类。在 8085 中,长度是根据“字节”而不是“字”来衡量的,因为 8085 微处理器具有 8 位数据总线。三种类型的指令是:1字节指令、2字节指令和3字节指令。

1. 一字节指令——
在1字节指令中,指令的操作码和操作数用一个字节表示。

  • 示例 1:
    任务 – 复制寄存器 B 中累加器的内容。
    Mnemonic- MOV B, A
    Opcode- MOV
    Operand- B, A
    Hex Code- 47H
    Binary code- 0100 0111 
  • 示例 2:
    任务 – 将累加器的内容添加到寄存器 B 的内容中。
    Mnemonic- ADD B
    Opcode- ADD
    Operand- B
    Hex Code- 80H
    Binary code- 1000 0000 
  • 示例 3:
    任务 – 反转(补充)累加器中的每一位。

    Mnemonic- CMA
    Opcode- CMA
    Operand-  NA
    Hex Code- 2FH
    Binary code- 0010 1111 

注 –这些指令的长度为 8 位;每个都需要一个内存位置。助记符后面总是跟一个字母(或两个字母)代表寄存器(如 A、B、C、D、E、H、L 和 SP)。

2. 两字节指令——
二字节指令是前8位表示操作码,后8位表示操作数的指令类型。

  • 示例 1:
    任务- 在累加器中加载十六进制数据 32H。
    Mnemonic- MVI A, 32H
    Opcode- MVI
    Operand- A, 32H
    Hex Code- 3E
    32
    Binary code- 0011 1110
    0011 0010 
  • 示例 2:
    任务- 将十六进制数据 F2H 加载到寄存器 B 中。
    Mnemonic- MVI B, F2H
    Opcode- MVI
    Operand- B, F2H
    Hex Code- 06
    F2
    Binary code- 0000 0110
    1111 0010 

注 –此类指令需要两个字节来存储二进制代码。助记符后面总是跟有 8 位(字节)数据。

3. 三字节指令——
三字节指令是一种指令类型,其中前 8 位表示操作码,接下来的两个字节指定 16 位地址。低位地址用第二个字节表示,高位地址用第三个字节表示。

  • 示例 1:
    任务 – 在累加器中加载内存 2050H 的内容。
    Mnemonic- LDA 2050H
    Opcode- LDA
    Operand- 2050H
    Hex Code- 3A
    50
    20
    Binary code- 0011 1010
    0101 0000
    0010 0000 
  • 示例 2:
    任务 – 将程序序列传送到内存位置 2050H。
    Mnemonic- JMP 2085H
    Opcode- JMP
    Operand- 2085H
    Hex Code- C3
    85
    20
    Binary code- 1100 0011
    1000 0101
    0010 0000 

注 –这些指令需要三个内存位置来存储二进制代码。助记符后面总是跟着 16 位(或 adr)。