DATA ENDS CODE SEGMENT
ASSUME
CS:CODE, DS:DATA, ES:DATA
MAIN PROC FAR
MOV AX, DATA MOV DS, AX MOV ES, AX MOV CX, COUNT LEA LEA CLD REP LEA
MOVSW SI, TEMP
TABLE
SI, TABLE DI, TEMP
MOV CX, COUNT MOV DI, OFFSET MOV BX, CX SHL DEC BX DEC BX
MOV AX, [SI+BX] MOV [DI], ADD DI, 2 LOOP LOP1 MOV AX, 4C00H INT
21H
AX BX, 1
LOP1:
MAIN ENDP CODE ENDS
END MAIN
回答以下问题:
1) REP MOVSW在指令中的功能是_____移动数据块TABLE到TEMP处 2) 程序中,循环程序段LOP1的功能是___将原数据块倒排 3) 程序运行结束时,TEMP+2字单元的内容是_____2030H 4) 程序运行结束时,TABLE+0字单元的内容是_____5060H
5) 若TABLE表中字的个数可变,则程序中应修改的语句是___TEMP DW 5 DUP(0)和COUNT DW 5 6) 在不修改程序其它语句的前提下,能代替COUNT DW 5的伪指令语句为____COUNT EQU 5 7) 程序运行结束时,DI的值为_TABLE+10或TEMP
8) 若将CLD改为STD,则程序运行结束时,TABLE+8字单元、TEMP字单元的内容分别为__1020H,1020H 三、 设计电路,编写程序
图3电路用8255的A口作为输入口,读取三个开关的状态,用8255的B口作为输出口,点亮红、绿、黄三个发光二极管。其中,8255A口地址为340H,B口地址为342H,要求:
1.画出8255与PC/XT微机总线的完整接口电路,包括端口地址译码器的设计(在答题纸上只需画出74LS138
与8255及PC/XT总线的连接即可)。
2. 编写8255初始化程序及同时实现以下三种功能的程序
1) K0, K1, K2全部合上时,红灯亮 2) K0, K1, K2全部断开时,绿灯亮 3) 其他情况黄灯亮
+5V 8255A D0~D7 8 A1 A2 IOR A8 A9 A6 A7 AEN IOW K0 PA0 1K PA1 K1 0.47K D0~D7 A0 A1 RD WR RESET CS PA2 K2 G1 G2A G2B 74LS138 A3 A4 A5 A B C Y0 RESET 黄 PB0 绿 PB1 红 PB2 图3 控制口:346H,开关为1闭合,为0断开,二极管为0亮,为1灭
MOV AL, 10010010B MOV DX, 346H OUT DX, AL MOV DX, 340H IN JZ JZ
AL, DX GREEN RED
AND AL, 07H CMP AL, 07H MOV DX, 342H MOV AL, 0FEH
OUT DX, AL JMP EXIT
RED: MOV DX, 342H MOV AL, 0FBH OUT DX, AL JMP
EXIT
MOV DX, 342H MOV AL, 0FDH ;黄灯亮
GERRN:
OUT DX, EXIT:
HLT
AL
相关推荐: