汇编语言程序设计Word下载.docx
- 文档编号:13824149
- 上传时间:2022-10-13
- 格式:DOCX
- 页数:27
- 大小:18.87KB
汇编语言程序设计Word下载.docx
《汇编语言程序设计Word下载.docx》由会员分享,可在线阅读,更多相关《汇编语言程序设计Word下载.docx(27页珍藏版)》请在冰豆网上搜索。
实验2分支及循环程序设计
2.掌握分支程序和循环程序的设计方法。
3.熟悉调试工具DEBUG,并运用DEBUG工具调试程序。
根据下列要求,编写汇编源程序,汇编连接汇编源程序,并利用DEBUG工具调试程序,验证程序的正确性。
1.编写汇编程序,统计某存储区若干个数据中英文字母的个数,并将结果在屏幕上显示。
2.从键盘任意输入一组字符数据,请编写汇编程序将该组数据加密后在屏幕上显示。
参考加密方法是:
每个数乘以2。
(说明:
本题的加密方法,同学们可以自己拟定)
实验3子程序程序设计
2.掌握子程序的设计方法。
根据下列要求,编写汇编源程序,并利用DEBUG工具调试程序,验证程序的正确性。
1.编程以十进制形式和十六进制形式显示AX的容,并把两个显示功能分别封装成子程序dispDEC和dispHEX。
2.设在以EXAMSCORE为首地址的数据缓冲区依次存放某班10名同学5门功课的成绩,现要统计各位同学的总分,并将总分放在该学生单科成绩后的单元,并调用第1个程序封装好的子程序,以十进制方式显示统计情况,显示格式自行设计。
请编程完成此功能。
数据缓冲区参考数据定义如下:
EXAMSCOREDB01;
学号
DB89,76,54,77,99;
单科成绩
DW?
;
该学生的总分
DB02;
DB79,88,64,97,92;
实验4综合程序设计
2.掌握汇编语言程序的设计方法。
1.编写汇编程序接收用户从键盘键入的月份数,在终端上显示该月的英文缩写名。
当用户按下ESC键时,程序退出,返回DOS。
参考程序执行过程如下:
month?
5↙MAYmonth?
9↙SEPmonth?
2.按15行×
16列的表格形式显示ASCII码为10H~FFH的所有字符。
每16个字符为一行,每行中的相邻两个字符之间用空白符(ASCII码为0)分隔。
3.在第2题程序的基础上进行修改。
将显示表格的行、列数由固定的15行16列改为由用户从键盘输入。
然后,按用户输入的行列值进行显示。
4.编写汇编程序将存数据区保存的若干个带符号16位数据按从大到小的顺序排列后,以十进制真值的形式在屏幕上显示。
源程序:
1.1******************************************************************
DATASEGMENT
xDB3
yDB1
zdw?
wdb23
rdb6
DATAENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA
START:
MOVAX,DATA
MOVDS,AX
moval,w
subal,[x]
cbw
movbl,5
idivbl
subal,[y]
movbl,r
addbl,2
imulbl
mov[z],ax
MOVAH,4CH
INT21H
CODEENDS
ENDSTART
1.2******************************************************************
xdb63
ydb?
moval,[x]
shrdl,1
shral,1
rcldl,1
mov[y],dl
2.1******************************************************************
STRINGDB'
g3tRfdtfTR34'
MESSAGEONEDB'
Pleaseinputthenumberofstring(<
10):
$'
MESSAGETWODB'
Thenumberofstringis:
START:
movah,9
movdx,offsetmessageone
int21h
MOVAH,1
MOVBL,AL
MOVDL,10
MOVAH,2
SUBBL,30H
CBW
MOVCX,BX
MOVAL,0
MOVBX,OFFSETSTRING
BEGIN:
MOVDL,[BX]
CMPDL,'
a'
JBRE
z'
JARE
INCAL
RE:
INCBX
LOOPBEGIN
ADDAL,30H
movbl,al
movdx,offsetmessagetwo
MOVDL,BL
ENDSTART
2.2******************************************************************
MAXLENDB32
ACTLENDB?
STRINGONEDB32DUP(?
)
STRINGTWODB32DUP(?
Pleaseinputthestring(<
31):
Theencrypticstringis:
MOVDX,OFFSETMAXLEN
MOVAH,0AH
SUBCH,CH
MOVCL,ACTLEN
ADDDX,2
MOVBX,DX
MOVBP,OFFSETSTRINGTWO
SUBDL,20H
MOV[BP],DL
INCBP
movAL,'
MOV[BP],AL
MOVAH,9
MOVDX,OFFSETSTRINGTWO
3.1******************************************************************
MAINPROCFAR
CODE
PUSHDS
SUBAX,AX
PUSHAX
MOVAX,10101B
CALLDISPDEC
CALLCRLF
CALLDISPHEX
RET
MAINENDP
DISPDECPROCNEAR
PUSHBX
PUSHCX
PUSHDX
PUSHF
MOVBX,AX
MOVCX,10000D
CALLDEC_DIV
MOVCX,1000D
MOVCX,100D
MOVCX,10D
MOVCX,1D
POPF
POPDX
POPCX
POPBX
POPAX
DEC_DIVPROCNEAR
MOVAX,BX
MOVDX,0
DIVCX
MOVDL,AL
ADDDL,30H
DEC_DIVENDP
DISPDECENDP
DISPHEXPROCNEAR
MOVCH,4
MOVCL,4
ROTATE:
ROLBX,CL
MOVAL,BL
ANDAL,0FH
CMPAL,3AH
JLPRINTIT
ADDAL,7H
PRINTIT:
DECCH
JNZROTATE
DISPHEXENDP
CRLFPROCNEAR
MOVDL,0AH
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 汇编语言 程序设计
![提示](https://static.bdocx.com/images/bang_tan.gif)