- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
.
.
汇编语言程序设计实验报告
学院:计算机科学与技术 专业:计算机科学与技术 班级:计科 131
姓名 学号 实验组实验时间 指导教师 肖敏 成绩
实验工程名称 实验五: 8086 汇编语言子程序程序设计
实
验
熟悉子程序的设计方法
目
的
实
验
对汇编源程序进行汇编、链接,在 Debug 环境下完成调试和运行。
原理
实
验 1、熟悉子程序的结构及考前须知内 2、掌握子程序的设计、调试方法
容
实
验 1. 硬件:微型计算机 1 台环 2. 软件: MASM软件
境
实验一 . 使用子程序设计编程实现求数组 ARY 元素之和: 编辑下面的源程序到文件 lab5.asm 中:
CODE SEGMENT
实 ORG 100H
ASSUME CS:CODE,DS:CODE,SS:CODE
验 MAIN PROC FAR MOV AX,CODE
步 MOV DS,AX
MOV TABLE ,OFFSET ARY
骤 MOV TABLE+2,OFFSET COUNT
MOV TABLE+4,OFFSET SUM MOV BX,OFFSET TABLE CALL PROADD
MOV AX,4C00H INT 21H
MAIN ENDP
PROADD PROC NEAR PUSH AX
PUSH CX PUSH SI PUSH DI MOV SI,[BX]
MOV DI,[BX+2] MOV CX,[DI] MOV DI,[BX+4] XOR AX,AX
NEXT:ADD AX,[SI] ADD SI,2
LOOP NEXT MOV [DI],AX POP DI POP SI
POP CX POP AX RET
PROADD ENDP
ARY DW 1,2,3,4,5,6,7,8,9,10
COUNT DW 10 SUM DW ?
TABLE DW 3 DUP(?) CODE ENDS
END MAIN
使用相应的文本编辑器建立文件,内容如上所示。二. 生成可执行文件:
汇编:
C:\masm masm lab5;
连接:
C:\masm link lab5;
三. 请写出此程序中的变量 ary,count,sum 的EA,并判断此程序的功能:
四. 用debug 调试此程序时 , 第一条指令的段内 EA 是多少 ?此程序数据段内偏移地址为
0 的字单
元数据为多少 ?其对应的机器指令是什么 ?
L ;加载程序文件
R ;查看 IP 与CS 存放器的内容
D DS: 0 ;查看当前数据段内偏移地址为 0 的字单元数据
U ;查看机器指令
实验二:编写一个子程序,实现在屏幕的指定位置,用指定颜色,显示一个用 0 结尾的字符串
源程序如下
data segment
str db display string,0 data ends
code segment
assume cs:code,ds:data start:
mov ax,data mov ds,ax mov dh,8 mov dl,21 mov cl,3
mov si,offset str call show_str mov ax,4c00h int 21h
;----------------------------
show_str proc near push ax
push cx push dx push es push si
push di
mov ax,0b800h mov es,ax
dec dh mov al,160 mul dh add dl,dl
mov dh,0 ; 计算显示在屏幕位置
add ax,dx mov di,ax mov ah,cl x:
mov cl,ds:[si] mov ch,0 jcxz f
mov al,cl
mov es:[di],ax inc si
inc di
inc di jmp x f:
pop di pop si pop es pop dx pop cx pop ax ret
show_str endp
;------------------------
code ends end start
实验三:编写一个子程序,实现将 word 型数据以十进制形式显示出来源程序如下:
assume cs:code data segment
db 10 dup(0) data ends stack segment
db 16 dup(0) stack ends code segment start:
mov ax, data mov ds, ax mov ax, stack mov ss, ax mov sp, 16 mov dx, 0c1h mov ax, 76f3h
mov si, 0 call dwtoc mov d
您可能关注的文档
最近下载
- 昆西37~160KW空压机样本.pdf VIP
- MEDICA-EQUAsmart机器简介课件.ppt VIP
- 电解铝行业较大危险因素辨识与防范指导手册.docx
- 2024年人教版历史7年级上册全册课件(新版教材).ppt
- 《临床营养学》Word版-急诊临床营养学教材--目录.docx VIP
- 种植三方合同协议.docx VIP
- 2026-2030中国无人机航空电子行业发展形势与前景动态预测报告.docx
- (完整版)青少版新概念入门级A期末测试卷.docx VIP
- 2025年一级建造师考试真题及答案《市政实务》.docx VIP
- 2026人教版六年级上册数学期末考试试卷(3套含答案解析).pdf
原创力文档


文档评论(0)