文档介绍:
实验一数据传送
1、子程序Move中为什么比较SI、DI?
源数据块与目标范围有可能部分重叠,需要考虑从第一个字节开始复制(顺序复制),还是从最后一个字节开始复制(倒序复制)。
源数据块与目标范围有可能部分重叠,需要考虑从第一个字节开始复制(顺序复制),还是从最后一个字节开始复制(倒序复制)。
2、编写一个程序,将DS段中的数据传送到实验仪B4区的61C256中。说明:B4区的61C256在I/O设备区,使用、读写。
实验二数制转换实验
实验内容1中将一个五位十进制数转换为二进制数(十六位)时,这个十进制数最小可为多少,最大可为多少?为什么?
最小为00000,最大为65535,因为16位二进制数表示十进制数的范围是0~65535
将一个十六位二进制数转换为ASCII码十进制数时,如何确定Di的值?
Di=16位二进制数/ ; n=5,4,3,2,1,0
在十六进制转换为ASCII码时,存转换结果后,为什么要把DX向右移四次?
因为每四位二进制数表示一位16进制数,内存单元中的数据是以二进制存储的
4. 自编ASCII码转换十六进制、二进制转换BCD码的程序,并调试运行。
实验三运算类编程实验
1. 求累加和程序设计,在偏移地址为1000H开始依顺序填入16个字(16个16位数),利用程序求和,存放在偏移地址2000H;
2. 多字节加法程序设计,参考原程序,编写个两个64位数的减法程序,结果保存到具体内存单元,调试并记录。
实验四分支程序设计实验
1、将源数据首址改为3100H,目的数据地址改为310A,再加以验证(注意单步调试);
2、将源数据首址改为310AH,目的数据地址改为3100,再加以验证(注意单步调试)。
实验六排序程序设计实验
1、注意两个循环是如何循环的,如果想减少判断次数,比如说几次交换后就不再有数据交换了,如何修改程序来减少程序执行时间;
2、编一程序把3000H-3009H中内容按从大到小排列;如果是有符号数怎么改写程序。
硬件一静态存储器扩展实验
5. 改变实验程序,按非规则字写存储器,观察实验结果。
SSTACK SEGMENT STACK
DW 32 DUP(?)
SSTACK ENDS
CODE SEGMENT
START PROC FAR
ASSUME CS:CODE
MOV AX, 8000H ; 存储器扩展空间段地址
MOV DS, AX
AA0: MOV SI, 0000H ; 数据首地址
MOV CX, 0010H
MOV AX, 0000H
AA1: INC SI
MOV [SI], AX
INC AX
;INC SI
INC SI
LOOP AA1
MOV AX,4C00H
INT 21H ;程序终止
START ENDP
CODE ENDS
END START
6. 改变实验程序,按字节方式写存储器,观察实验现象。
SSTACK SEGMENT STACK
DW 32 DUP(?)
SSTACK ENDS
CODE SEGMENT
START PROC FAR
ASSUME CS:CODE
MOV AX, 8000H ; 存储器扩展空间段地址
MOV DS, AX
AA0: MOV SI, 0000H ; 数据首地址
MOV CX, 0010H
MOV AX, 0000H
AA1: MOV [SI], AX
INC AX
INC SI
LOOP AA1
MOV AX,4C00H
INT 21H ;程序终止
START ENDP
CODE ENDS
END START
7. 将实验程序改为死循环程序,分别按规则字与非规则字的方式写存储器。
SSTACK SEGMENT STACK
DW 32 DUP(?)
SSTACK ENDS
CODE SEGMENT
START PROC FAR
ASSUME CS:CODE
MOV AX, 8000H ; 存储器扩展空间段地址
MOV DS, AX
AA0: MOV SI, 0000H ; 数据首地址
MOV CX, 0010H
MOV AX, 0000H
AA1: MOV [SI], AX
INC AX
INC SI
INC SI
JMP AA1
MOV AX,4C00H
INT 21H ;程序终止
START ENDP
CODE ENDS
END START
硬件二 8259中断控制实验
1.在中断中完成BCD码转换为二进制数。
将四个二位十进制数的BCD码存放于3
内容来自淘豆网www.taodocs.com转载请标明出处.