1 / 19
文档名称:

中南大学 汇编语言实验报告.doc

格式:doc   大小:198KB   页数:19页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

中南大学 汇编语言实验报告.doc

上传人:mh900965 2018/2/12 文件大小:198 KB

下载得到文件列表

中南大学 汇编语言实验报告.doc

相关文档

文档介绍

文档介绍:计算机原理与汇编
实验报告
学生姓名
学号
专业班级
指导教师贺建飚
学院信息科学与工程学院
完成时间 2014年6月
实验一二进制转十六进制
实验目的
 掌握循环程序的设计方法。
掌握汇编语言源程序的编辑、汇编、连接及调试过程。
(3)进一步熟悉利用DEBUG程序修改参数的方法,并检查和验证结果的正确性。
(4) 学会针对不同的问题,选用不同的组织循环的方法。
二、实验要求
掌握循环程序的过程和汇编实现原理,进一步熟练掌握DEBUG操作指令以及汇编语言源程序的编辑、汇编、连接及调试过程。
实验内容
掌握循环排序算法的思想:
二进制到十六进制转换程序
实验代码如下:
assume cs:code
code segment
main proc far
start: mov bx,1111000111110000b ;待转换成十六进制的二进制数
mov ch,4 ;设置循环次数
rotate: mov cl,4 ;设置循环左移的位数
rol bx,cl ;将bx中的每位依次循环左移4位,
;每左移一次,把最高位同时移入CF和操作数最低位
mov al,bl
and al,0fh ;将al高4位清0,保留从rol循环移位到al低四位的值
add al,30h ;将4位二进制数转换成对应的ASCII码
cmp al,3ah ;判定4位二进制数是否大于9
jl print
add al,7h
print: mov dl,al ;调用中断程序输出单个字符
mov ah,2
int 21h
dec ch ;继续循环,直到循环4次为止
jnz rotate
main endp
mov ax,4c00h
int 21h
code ends
end
实验结果
DEBUG调试如下:
实验心得
编了这个程序之后发现,想要真正理解一个程序都是需要掌握众多助记符的用法以及它的意思,只有了解并明白了这些之后才可以分析程序或者是编写简单的小程序。
实验二起泡排序算法的程序实现
一、实验目的
(1)掌握循环程序的设计方法。
(2)掌握汇编语言源程序的编辑、汇编、连接及调试过程。
(3)进一步熟悉利用DEBUG程序修改参数的方法,并检查和验证结果的正确性。
(4)学会针对不同的问题,选用不同的组织循环的方法。
二、实验原理
循环结构分DO_WHILE和DO_UNTIL两种,无论使用哪种循环结构,循环程序一般应包括以下几部分:
①循环初始化。它包括设置循环次数的初始值、地址指针的初始设置等。
②循环体。这是循环工作的主体,包括要重复执行的操作,以及循环的修改部分。修改部分包括地址指针的修改、循环控制条件的修改等。
③循环控制部分。它是控制循环的关键,判断循环条件满足与否。
特别要注意循环入口和循环次数的正确设置、地址指针及循环控制条件的修改等。否则会得不到期望的结果。
三、实验内容
掌握循环排序算法的思想:
起泡排序算法的程序实现
实验代码如下:
DATAS SEGMENT
BUFFER DB 100 DUP(?)
X DB 5 DUP(?)
STRING1 DB "PLEASE INPUT DATAS:","$"
STRING2 DB "AFTER SORT IS:","$"
SHIFT DB 13,10,'$'
SPACE DB 20H,'$'
DATAS ENDS
STACKS SEGMENT
DB 256 DUP(?)
STACKS ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS,SS:STACKS,ES:DATAS
START:
MOV AX,DATAS
MOV DS,AX
MOV ES,AX
MOV AX,STACKS
MOV SS,AX
LEA SI,BUFFER
MOV CX,0
LEA DX,STRING1
MOV AH,09H
INT 21H
L1:
MOV AH,01H ;/////////////////键盘输入转成数
INT 21H
CMP AL,0DH
JE L2 ;跳到回车处理
CMP AL,20H ;空格处理
JE L3
XOR AH,AH
SUB AX,30H
XCHG AX,BX
MOV DX,10
MUL DX
ADD BX,AX
JMP L1
L3:
INC CX ;/////////////存储到buffer中
MOV [SI],BL
ADD SI,1