华电保定微机原理汇编实验(48页).doc





《华电保定微机原理汇编实验(48页).doc》由会员分享,可在线阅读,更多相关《华电保定微机原理汇编实验(48页).doc(48页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-实验一 、数据块传送1. 将数据段中2000H单元开始存放的10个数(8位数)传送到3000H开始的10个字节中。源程序:DATAS SEGMENT ;此处输入数据段代码 ORG 2000H DATA1 DB 1,2,3,4,5,6,7,8,9,10 ORG 3000H DATA2 DB 10 DUP(0)DATAS ENDSSTACKS SEGMENT ;此处输入堆栈段代码STACKS ENDSCODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKSSTART: MOV AX,DATAS MOV DS,AX ;此处输入代码段代码 MOV SI,200
2、0H MOV DI,3000H MOV CX,10NEXT:MOV AL,SI MOV DI,AL INC SI INC DI DEC CX JNZ NEXT MOV AH,4CH INT 21HCODES ENDS END START运行结果:2. 将数据段中2000H单元开始存放的10个数(16位数)传送到3000H开始的10个字中。源程序:DATAS SEGMENT ;此处输入数据段代码 ORG 2000H DATA1 DW 1,2,3,4,5,6,7,8,9,10 ORG 3000H DATA2 DW 10 DUP(0) DATAS ENDSSTACKS SEGMENT ;此处输入堆栈
3、段代码STACKS ENDSCODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKSSTART: MOV AX,DATAS MOV DS,AX ;此处输入代码段代码 MOV SI,2000H MOV DI,3000H MOV CX,10NEXT:MOV AX,SI MOV DI,AX ADD SI,2 ADD DI,2 DEC CX JNZ NEXT MOV AH,4CH INT 21HCODES ENDS END START运行后:3. 将数据DATA1中的10个字节数据传送到数据段DATA2中源数据:DATAS SEGMENT ;此处输入数据段代码
4、DATA1 DB 1,2,3,4,5,6,7,8,9,10 ORG 1000H DATA2 DB 10 DUP(0)DATAS ENDSSTACKS SEGMENT ;此处输入堆栈段代码STACKS ENDSCODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKSSTART: MOV AX,DATAS MOV DS,AX ;此处输入代码段代码 LEA SI,DATA1 LEA DI,DATA2 MOV CX,10NEXT:MOV AL,SI MOV DI,AL INC SI INC DI DEC CX JNZ NEXT MOV AH,4CH INT 21
5、HCODES ENDS END START初始值:运行后:4. 将数据段中2000H开始的20个数据传送到2010H开始的20个单元中。源程序:DATAS SEGMENT ;此处输入数据段代码 ORG 2000H DATA1 DB 5 DUP(1,2,3,4,5,6) DATAS ENDSSTACKS SEGMENT ;此处输入堆栈段代码STACKS ENDSCODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKSSTART: MOV AX,DATAS MOV DS,AX ;此处输入代码段代码 MOV SI,2000H MOV DI,2100H MOV
6、CX,20NEXT1:MOV AL,SI MOV DI,AL INC SI INC DI DEC CX JNZ NEXT1 MOV SI,2100H MOV DI,2010H MOV CX,20NEXT2:MOV AL,SI MOV DI,AL INC SI INC DI DEC CX JNZ NEXT2 MOV AH,4CH INT 21HCODES ENDS END START运行结果:实验二 查表实验目的:熟悉实验环境;熟练掌握查表程序1. 已知015的平方值表,查表求X的平方值,送到Y单元,用两种方法DATAS SEGMENT ;此处输入数据段代码 TABLE DB 0, 1,4,9,
7、16,25,36,49,64,81,100,121,144,169,196,255 X DB 3 Y DB 0DATAS ENDSSTACKS SEGMENT ;此处输入堆栈段代码STACKS ENDSCODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKSSTART: MOV AX,DATAS MOV DS,AX ;此处输入代码段代码 LEA BX,TABLE MOV AL,X MOV AH,0 ADD BX,AX MOV AL,BX MOV Y,AL MOV AH,4CH INT 21HCODES ENDSEND START运行结果:方法二:源程序:
8、DATAS SEGMENT ;此处输入数据段代码 TABLE DB 0,1,4,9,16,25,36,49,64,81,100,121,144,169,196,255 X DB 3 Y DB 0DATAS ENDSSTACKS SEGMENT ;此处输入堆栈段代码STACKS ENDSCODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKSSTART: MOV AX,DATAS MOV DS,AX ;此处输入代码段代码 LEA BX,TABLE MOV AL,X XLAT MOV Y,AL MOV AH,4CH INT 21HCODES ENDS END
9、 START运行结果2. 2已知0255的平方值表,查表求X的平方值,送到Y单元源程序DATAS SEGMENT ;此处输入数据段代码 TABLE DW 0,1,4,9,16,25,250 DUP(0) X DW 3 Y DW ?DATAS ENDSSTACKS SEGMENT ;此处输入堆栈段代码STACKS ENDSCODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKSSTART: MOV AX,DATAS MOV DS,AX ;此处输入代码段代码 LEA SI,TABLE MOV AX,X ADD AX,AX ADD BX,AX MOV AX,B
10、X MOV Y,AX MOV AH,4CH INT 21HCODES ENDS END START运行结果实验三、计算1. 计算1234F000H+98765000H的和源程序:DATAS SEGMENT ;此处输入数据段代码 DATA1 DD 1234F000H DATA2 DD 98765000HDATAS ENDSSTACKS SEGMENT ;此处输入堆栈段代码STACKS ENDSCODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKSSTART: MOV AX,DATAS MOV DS,AX ;此处输入代码段代码 LEA SI,DATA1 L
11、EA DI,DATA2 MOV AX,SI ADD AX,DI MOV SI,AX MOV AX,SI+2 ADC AX,DI+2 MOV SI+2,AX MOV AH,4CH INT 21HCODES ENDS END START运行结果2. 计算8字节数据1122334455667788H与 99AABBCCDDEEFF00H的和源程序:DATAS SEGMENT ;此处输入数据段代码 DATA1 DQ 1122334455667788H DATA2 DQ 99AABBCCDDEEFF00HDATAS ENDSSTACKS SEGMENT ;此处输入堆栈段代码STACKS ENDSCODE
12、S SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKSSTART: MOV AX,DATAS MOV DS,AX ;此处输入代码段代码 LEA SI,DATA1 LEA DI,DATA2 MOV CX,4 CLCNEXT:MOV AX,SI ADC AX,DI MOV SI,AX ADD SI,2 ADD DI,2 DEC CX JNZ NEXT MOV AH,4CH INT 21HCODES ENDS END START运行结果3. 计算8字节的BCD码十进制数1122334455667788H与9988776655443322H的和源程序:DATAS SE
13、GMENT ;此处输入数据段代码 DATA1 DB 88H,77H,66H,55H,44H,33H,22H,11H DATA2 DB 22H,33H,44H,55H,66H,77H,88H,99HDATAS ENDSSTACKS SEGMENT ;此处输入堆栈段代码STACKS ENDSCODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKSSTART: MOV AX,DATAS MOV DS,AX ;此处输入代码段代码 LEA SI,DATA1 LEA DI,DATA2 CLC MOV CX,8NEXT:MOV AL,SI ADC AL,DI DAA
14、MOV SI,AL INC SI INC DI DEC CX JNZ NEXT MOV AH,4CH INT 21HCODES ENDS END START运行结果4. 计算10个字节数据的和(数据自己定义)源程序:DATAS SEGMENT ;此处输入数据段代码 DATA1 DB 1,2,3,4,5,6,7,8,9,10 SUM DB 0 DATAS ENDSSTACKS SEGMENT ;此处输入堆栈段代码STACKS ENDSCODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKSSTART: MOV AX,DATAS MOV DS,AX ;此处输
15、入代码段代码 LEA SI,DATA1 LEA DI,SUM MOV CX,10 CLCNEXT:MOV AL,SI ADC SUM,AL ADD SI,1 DEC CX JNZ NEXT MOV AH,4CH INT 21HCODES ENDS END START运行结果5. 计算10个字数据的和(数据自己定义)源程序:DATAS SEGMENT ;此处输入数据段代码 DATA1 DW 1,2,3,4,5,6,7,8,9,10 SUM DW 0 DATAS ENDSSTACKS SEGMENT ;此处输入堆栈段代码STACKS ENDSCODES SEGMENT ASSUME CS:CODE
16、S,DS:DATAS,SS:STACKSSTART: MOV AX,DATAS MOV DS,AX ;此处输入代码段代码 LEA SI,DATA1 LEA DI,SUM MOV CX,10 CLCNEXT:MOV AX,SI ADC SUM,AX ADD SI,2 DEC CX JNZ NEXT MOV AH,4CH INT 21HCODES ENDS END START运行结果实验四、计算表达式的值1. 计算表达式的值,已知X=10,Y=5。DATAS SEGMENT ;此处输入数据段代码 X DB 10 Y DB 5 Z DB ?DATAS ENDSSTACKS SEGMENT ;此处输入
17、堆栈段代码STACKS ENDSCODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKSSTART: MOV AX,DATAS MOV DS,AX ;此处输入代码段代码 MOV AL,X SUB AL,Y MOV BL,7 MUL BL CBW MOV BL,Y ADD BL,2 IDIV BL MOV Z,AL MOV AH,4CH INT 21HCODES ENDS END START实验五、找最大、最小数1. 找出2040H单元和2041H单元的大数,送2042H单元(数据自己定义)DATAS SEGMENT ;此处输入数据段代码 ORG 2040
18、H DATA1 DB 11 DATA2 DB 12 DATA3 DB ?DATAS ENDSSTACKS SEGMENT ;此处输入堆栈段代码STACKS ENDSCODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKSSTART: MOV AX,DATAS MOV DS,AX ;此处输入代码段代码 MOV AL,DATA1 CMP AL,DATA2 JG GREAT MOV AL,DATA2GREAT:MOV DATA3,AL MOV AH,4CH INT 21HCODES ENDSEND START2. 找出10个数(8位数)里的最大数(数据自己定义
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 保定 微机 原理 汇编 实验 48

限制150内