学 生 实 验 报 告 册 2011——2012 学年第 1 学期 实验名称: 汇编语言程序设计 学院: 信息与电气工程学院 班级: 0 9 级计算机科学与技术 2 班 学号: ******** 姓名: *** 指导教师: ** 实验一 DEBUG 的使用 实验目的: (1)熟悉在计算机上建立、汇编、调试和运行汇编语言程序的过程 (2)通过实验熟悉DEBUG 程序的使用方法,掌握 DEBUG 命令 实验题目1:编程计算表达式:V<-(W-(X+7)*Y+Z)/X,其中 X,Y,Z,W单元中,计算上面表达式,并把运算结果存入 V 存储单元中。 (1) 在DEBUG 下运行、调试该程序。 (2) 用DEBUG 中的E 命令修改内存单元内容。 (3) 用DEBUG 中的A 命令修改指令。 (4) 用DEBUG 中的D 命令显示运算表达式的结果。 源代码: data segment x dw 0001h y dw 0002h z dw 0010h w dw 0020h v dw 2 DUP(?) data ends code segment assume cs:code,ds:data start: mov ax,data mov ds,ax mov ax,x add ax,7 imul y mov cx,ax mov bx,dx mov ax,w cwd sub ax,cx sbb dx,bx mov cx,ax mov bx,dx mov ax,z cwd add ax,cx adc dx,bx idiv x mov v ,ax mov v +2,dx mov ah,4ch int 21h code ends end start 运行结果: 实验题目2:编写程序,把从键盘上输入的小写字母转换成大写字母显示出来 (1) 用DEBUG 的G、T 命令执行指令 源程序: code segment assume cs:code start: mov ah,01h int 21h mov bl,al cmp bl,'a' jb start cmp bl,'z' ja start sub bl,20h mov dl,bl mov ah,02h int 21h mov ah,4ch int 21h code ends end start 运行结果: 实验二 顺序结构程序设计 实验目的: (1)学习数据传送指令和算术运算指令的用法 (2)熟练掌握DEBUG 的使用方法 实验题目1:从键盘上接收两个一位十六进制数据,求其和,并以十进制形式显示出来。 源代码: code segment assume cs:code start: mov cx,02h ;loop 循环次数 mov bl,00h input: mov ah,01h int 21h sub al,30h ;数字 cmp al,0ah jl next sub al,07h ;大写字母 cmp al,10h jl next sub al,20h ;小写字母 next: add bl,al ;把两数之和放在 bh 中 loop input ;转化为十进制数 mov al,bl cbw cmp al,0ah jg greater mov dl,al...