a) 修改电路图如下:

电路图

在电路图中增加了一个显示接口电路,其中包含一个寄存器和一个数码管。新增的指令OUT A将寄存器A中的数输出到显示接口电路的寄存器中。

b) 汇编程序如下:

ORG 0
START: 	MOV A, 0	; 将0存入寄存器A
	OUT A		; 输出寄存器A的值到显示接口电路
	DELAY:	MOV B, 0	; 将0存入寄存器B
	LOOP:	MOV C, 0	; 将0存入寄存器C
		WAIT:	MOV D, 0	; 将0存入寄存器D
			INC D		; 将寄存器D的值加1
			JNZ WAIT	; 如果寄存器D的值不为0,跳转到WAIT
		INC C		; 将寄存器C的值加1
		JNZ LOOP	; 如果寄存器C的值不为0,跳转到LOOP
		INC B		; 将寄存器B的值加1
		JNZ DELAY	; 如果寄存器B的值不为0,跳转到DELAY
		INC A		; 将寄存器A的值加1
		JNZ START	; 如果寄存器A的值不为0,跳转到START
	HALT		; 停机指令

c) 提交的文件包括:

  1. 修改后的电路图:circuit_diagram.png
  2. 汇编程序的机器码文件:program.hex
  3. 显示接口电路的机器码文件:display_interface.hex
  4. 控制单元的机器码文件:control_unit.hex
  5. ALU的机器码文件:alu.hex
  6. 寄存器文件的机器码文件:register_file.he

原文地址: https://www.cveoy.top/t/topic/h4nK 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录