汇编语言程序
设计
领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计
实验
报告
软件系统测试报告下载sgs报告如何下载关于路面塌陷情况报告535n,sgs报告怎么下载竣工报告下载
-循环程序设计
成绩评定
教师签名
课程名称: 汇编语言程序设计 开课学期: 2017-2018学年第1学期 班 级:
指导老师:
实验题目: 循环程序设计 学 号:
姓 名:
一、实验目的:
通过实验,理解汇编程序编译和链接的过程,掌握程序
设计的基本方法,理解循环程序设计的结构。
二(实验内容
1.汇编语言程序上机过程:课本P147,例4.30
2.循环程序设计:课本P162,例5.1
三、实验过程描述
(一) 程序编译与链接
例4.30请把40个字母a的字符串从缓冲区传送到目的缓冲
区,建立汇编源程序147.asm。
(1)程序源代码
data segment ;define data segment
source_buffer db 40 dup('a')
data ends
extra segment ;define extra segment
dest_buffer db 40 dup(?)
extra ends
code segment ;define code segment
main proc far ;main part of program
assume cs:code,ds:data,es:extra
start:
;set up stack for return
push ds ;save old data segment
sub ax,ax ;put zero in ax
push ax ;save it on stack
;set DS register to current data segment
mov ax,data ;data segment addr
mov da,ax ;into DS register
;set ES register to current extra segment
mov ax,extra ;extra segment addr
mov es,ax ;into ES register
;MAIN PART OF PROGRAM GOES HERE
lea si,source_buffer ;put offset addr of source
;buffer in SI
lea di,dest_buffer ;put offset addr of dest
;buffer in di
cld ;set DF flag to forward
mov cx,40 ;put count in cx
rep movsb ;move entire string
ret ;return to DOS
main endp ;end of main part of program
code ends ;end of code segment
end start ;end of assembly
(2)用MASM程序产生obj文件
查看文件目录
(3)用MASM打开汇编源程序
发现一处语法错误,改正源代码后
可以看到已经生产obj文件
(4)用LINK程序产生EXE文件
(5)程序的执行
运行程序并调试EXE文件,目标字符在缓冲区间传送,结果无
法直接在屏幕上显示出来,通过debug调试内存单元可以查看
(二)循环程序设计
例5.1 试编制一个程序把BX寄存器内的二进制数用十六
进制数的形式在屏幕上显示出来。
(1)
分析
定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析
题意
1.循环体中应该包括从二进制到所显示字符的ASCLL
之间转换。
2.采用循环移位的方式把所显示的4二进制数移到最
后面,再想
办法
鲁班奖评选办法下载鲁班奖评选办法下载鲁班奖评选办法下载企业年金办法下载企业年金办法下载
把最后4位二进制数转换成16进制数。
3.由于数值0到9的ASCLL为30到39H,而字幕A上
30H后还需要做一次判断,如果为字符A到F,则还需
要加上7才能显示出正确的十六进制数。 (2)程序框图
(3)程序源代码
program segment
main proc far
assume cs:program start:
push ds
sub ax,ax
push ax
mov ch,4 rotate: mov cl,4
rol bx,cl
mov al,bl
and al,0fh
add al,30h
cmp al,3ah
jl printit
add al,7h printit:
mov dl,al
mov ah,2
int 21h
dec ch
jnz rotate
ret
main endp
program ends
end start
(4)编译和链接
(5)调试程序
(6)运行程序
四、实验小结
通过本实验,我了学会了如何通过编译和链接完成汇编语言程序的建立过程,如何调试源程序的的语法错误。理解了循环程序的结构,学会了程序的基本思想和方法。