(完整版)汇编语言实验报告5574277
更新时间:2024-06-07 07:20:01 阅读量: 综合文库 文档下载
合肥工业大学 计算机与信息学院
实验报告
课 程:汇编语言程序设计
专业班级:
学 号:
姓 名:
实验一 Debug程序的使用
一. 实验目的
1、熟悉DEBUG程序中的命令,学会在DEBUG下调试运行汇编语言源程序。
2、掌握8086/8088的寻址方式及多字节数据的处理方法。 二. 实验内容
1、利用DEBUG程序中的“E”命令,将两个多字节数“003F1AE7H”和“006BE5C4H”分别送入起始地址为DS:0200H和DS:0204H两个单元中。
2、分别用直接寻址方式和寄存器间接寻址方式编写程序段,实现将DS:0200H单元和DS:0204H单元中的数据相加,并将运算结果存放在DS:0208H单元中。 要求:
本次实验的内容均在DEBUG下完成,实现数据的装入、修改、显示;汇编语言程序段的编辑、汇编和反汇编;程序的运行和结果检查。 三. 实验过程和程序 1.
e ds:0200 78 56 34 12 e ds:0204 98 BA DC FE 2.
直接寻址: mov ax,[0200] mov bx,[0202] add ax,[0204] adc bx,[0206]
mov [0208 ],ax mov [020a],bx 间接寻址: mov si,[0200] mov di,[0204] mov bx,[0208] mov ax,[si] mov dx,[si+2] add ax,[di] adc dx,[di+2] mov [bx],ax mov [bx+2],dx 附加题1 e ds:0000 1c 02 e ds:0002 01 00 e ds:0004 FF FF e ds:0006 38 04 e ds:0008 00 00
Microsoft Windows [???? 6.1.7600]
???????? (c) 2009 Microsoft Corporation???????????????? C:\\Users\\Administrator>debug -e ds:0000 1c 02 -e ds:0002 01 00 -e ds:0004 FF FF -e ds:0006 38 04
-e ds:0008 00 00 -a
13B3:0100 mov ax,[0000] 13B3:0103 mov bx,[0002] 13B3:0107 imul bx 13B3:0109 mov cx,ax 13B3:010B mov bx,dx 13B3:010D mov ax,[0004] 13B3:0110 cwd 13B3:0111 add cx,ax 13B3:0113 adc bx,dx 13B3:0115 sub cx,21c 13B3:0119 sbb bx,0 13B3:011C mov ax,[0006] 13B3:011F cwd 13B3:0120 sub ax,cx 13B3:0122 sbb dx,bx 13B3:0124 mov bx,[0000] 13B3:0128 idiv bx 13B3:012A mov [0008],ax 13B3:012D -g =0100 012d
AX=0002 BX=021C CX=FFFF DX=0001 SP=FFEE BP=0000 SI=0000 DI=0000
DS=13B3 ES=13B3 SS=13B3 CS=13B3 IP=012D NV UP EI PL
mov si,8 sub si,cx shl si,1 jmp addrtbl[si] l0: lea dx,s0 jmp output l1: lea dx,s1 jmp output l2: lea dx,s2 jmp output l3: lea dx,s3 jmp output l4: lea dx,s4 jmp output
转移表方法:
Data segment x db 80h
addrtbl dw l0,l1,l2,l3,l4,l5,l6,l7
l5: lea dx,s5 jmp output l6: lea dx,s6 jmp output l7: lea dx,s7 jmp output l:
loop again output: mov ah,9h int 21h mov ah,4ch int 21h
Code ends
end start
s0 db 'The 0 Bit is 1.$' s1 db 'The 1 Bit is 1.$' s2 db 'The 2 Bit is 1.$'
s3 db 'The 3 Bit is 1.$' s4 db 'The 4 Bit is 1.$' s5 db 'The 5 Bit is 1.$' s6 db 'The 6 Bit is 1.$' s7 db 'The 7 Bit is 1.$' Data ends Code segment
assume cs:code, ds:data
start: mov ax,data mov ds,ax mov cx,8 mov bl,x again: shr bl,1 jnc l mov si,8 sub si,cx l:
loop again lea ax,jmptbl mov cx,si shl si,1 add si,cx add ax,si
jmp ax jmptbl: jmp near ptr l0 jmp near ptr l1 jmp near ptr l2 jmp near ptr l3 jmp near ptr l4 jmp near ptr l5 jmp near ptr l6 jmp near ptr l7 l0: lea dx,s0 jmp output l1: lea dx,s1 jmp output l2: lea dx,s2 jmp output l3: lea dx,s3 jmp output l4: lea dx,s4 jmp output
l5: lea dx,s5 jmp output l6: lea dx,s6 jmp output l7: lea dx,s7 2.
Data segment x dw 1 y dw 2 z dw 0
Data ends Code segment
assume cs:code, ds:data
start: mov ax,data mov ds,ax sub sp,4 push y push x call f pop z
jmp output output: mov ah,9h int 21h mov ah,4ch int 21h Code ends
end start
mov ah,4ch int 21h
f proc near push bp mov bp,sp push si push dx push cx push bx push ax mov ax,[bp+4] mov cx,ax mov bx,[bp+6] imul bx
mov si,0 add ax,cx adc dx,si mov si,0 sub ax,bx sbb dx,si
四. 实验结果 1.
地址表方法:
BL中存储的数为: 10h 输出结果为: The 4 bit is 1. 转移表方法:
BL中存储的数为: 80h 输出结果为: The 7 bit is 1. 2.
五. 实验体会
mov [bp+8],ax mov [bp+10],dx ret 4 f endp Code ends
end start
通过本次试验,掌握了分支和子程序结构和设计方法;实现了转移表以及地址表的创建及调用,以及几种参数传递的方式,进一步熟悉了在PC机上建立、汇编、连接、调试和运行8086/8088汇编语言程序的过程。
实验四 汇编语言高级编程专题
一. 实验目的
1、汇编语言宏程序设计; 2、 掌握中断服务子程序的编写。 3、 汇编语言与高级语言的混编。
二. 实验内容
1、编写一个宏,求三个数的最小数,原型为:MIN3 x,y,z,min 2、挂接1CH中断,正计时60秒后退出。要求屏幕显示0-59的秒数。 三. 实验过程和程序 1.
MIN3 macro x,y,z,min mov al,x mov bl,y mov cl,z cmp al,bl jc l1 cmp bl,cl jc l2 mov min,cl jmp exit l1: cmp al,cl jc l3 mov min,cl jmp exit l2: mov min,bl jmp exit l3: mov min,al exit: endm
Data segment
x db 03h y db 02h z db 01h min db ?
Data ends Code segment
assume cs:code, ds:data
start: mov ax,data mov ds,ax MIN3 x,y,z,min add min,30h mov dl,min mov ah,02h int 21h mov ah,4ch int 21h
Code ends end start
2.
INTNO EQU 1CH USEINT = 59 DATA SEGMENT OLDISR DW ?,? TIMER DB 100 COUNTER DW 60 ISDONE DB 0 DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA START:
MOV AX,DATA MOV DS,AX
MOV AX,0 MOV ES,AX
;PROTECT IF USEINT MOV AL, INTNO MOV AH,35H INT 21H ;ES:BX
MOV OLDISR[0], BX
MOV AX,ES
MOV OLDISR[2], AX ELSE CLI
MOV AX, ES:[INTNO*4] MOV OLDISR[0],AX MOV AX,ES:[INTNO*4+2] MOV OLDISR[2], AX STI ENDIF
;SET NEW ISR IF USEINT PUSH DS
MOV AX, SEG ISR MOV DS,AX
MOV DX, OFFSET ISR MOV AL, INTNO MOV AH, 25H INT 21H POP DS ELSE CLI
MOV WORD PTR ES:[INTNO*4], OFFSET ISR
MOV
WORD
PTR
MOV AX,OLDISR[2] MOV ES:[INTNO*4+2],AX ES:[INTNO*4+2],SEG ISR STI ENDIF
;WAIT HERE WAITHERE: CMP ISDONE,1 JNZ WAITHERE
EXIT: ;RESTORE IF USEINT PUSH DS
MOV DX,OLDISR[0] MOV AX,OLDISR[2] MOV DS,AX MOV AL, INTNO MOV AH, 25H INT 21H POP DS ELSE CLI
MOV AX,OLDISR[0] MOV ES:[INTNO*4],AX
STI ENDIF
MOV AX,4C00H INT 21H ISR PROC FAR PUSH DX PUSH AX
MOV AX,DATA MOV DS,AX
STI 套
HERE
INC TIMER AGAIN: CMP 1000/55 ;18 JB DONE MOV TIMER,0
;便于中断嵌;COUNT TIMER,
;carriage
MOV AH,2 MOV DL,13 INT 21H
;print time MOV AX,COUNTER MOV DL,10 DIV DL MOV DH,AH MOV DL,AL MOV AH,2 ADD DL,30H INT 21H MOV DL,DH ADD DL,30H INT 21H
DEC COUNTER JGE DONE MOV ISDONE,1 DONE:
PUSHF
CALL DWORD PTR OLDISR CLI POP AX POP DX
IRET ;中断返回 ISR ENDP CODE ENDS END START
四. 实验结果 1.
输入:x,y,z分别是03h 02h 01h 输出:1 2.
五. 实验体会
通过本次试验熟悉了汇编语言宏程序设计;掌握中断服务子程序的编写,其中应注意恢复原中断指令,将ds重新指向数据段。
正在阅读:
(完整版)汇编语言实验报告557427706-07
部编版(2016)初中历史九年级下册第一单元第1课殖民地人民的反抗04-26
献身使命,立足岗位做贡献11-19
科技节开幕式主持词模板12-03
第十三章历史时期的东北05-26
“互联网”时代企业会计信息化建设03-26
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 整版
- 汇编语言
- 5574277
- 实验
- 报告
- 2009年浙江省丽水市数学试题卷及答案
- 一年级美术上册教案 会动的小纸人
- 峡口镇左溪小学2013下后勤总结
- 常见病原菌习题
- 多媒体技术在语文新课程中所体现的亲和力
- 计算机二级C语言上机题库及答案(100套)
- 国际商务谈判教案
- 城市住宅区规划原理试题6
- 半导体小区门口一进一出停车场系统配置及价格1
- 如何进行小学英语有效教学
- 微分几何试题库 (选择题)
- 如何描写事物、动植物
- 怎样识别真假皮沙发
- 上马中学校2011年秋季篮球运动会规程
- 七年级历史下册第五单元第一课《开运河创科举》教案岳麓版
- 小学奥数必须掌握的30个知识模块汇总(详细版) 2
- 民诉阶段练习题1
- 各位专家-中国科学院理化技术研究所网 - 图文
- 东师2017年教师专题讲座离线作业答案
- 角平分线的性质说课稿