2021 JZ 202A; 2023 DEC SI 2024 MOV AL,30 2026 MOV [SI],AL 2028 JMP 201D 202A INT 3
图1-3
4、 十六进制数转换为ASCII码
1) 程序及其流程
经过CPU处理后的十六进制数存放在起始地址为3500H的内存单元中,把它们转换成ASCII码之后,再分别存入起始地址为350AH的内存单元中。
从表2-1中可知,十六进制数加30H即可得到0H——9H的ASCII码,而要得到AH——FH的ASCII码,则需再加7H。程序流程图及参考程序如图1-4所示。
2)实验步骤 (1) 输入程序并检查无误。
(2) 在3500——3501H单元中存入四位十六进制数203B,即
E3500↙,并输入3B,20。 (3) G=2000↙,运行以上程序 (4) D350A↙,显示结果为:
0000:350A 42 33 30 32 CC? 输入数据与结果ASCII码对应顺序相反。
11
(5) 反复试几组数。考查程序的正确性。
地址(H) 助记符 注释 2000 MOV CX,0004 2003 MOV DI,3500 2006 MOV DX,[DI] 2008 MOV AX,DX
200A AND AX,000F ;取低四位值
200D CMP AL,0A; ; 判是否“0”-“9” 200F JB 2013 ; 是“0”-“9”转2013 2011 ADD AL,07; 是“A”-“F”,加7 2013 ADD AL,30; 转换为ASCII码 2015 MOV [DI+0A],AL 2018 INC DI
2019 PUSH CX ;保护循环计数器内容
12
201A MOV CL,04; 移位次数送CL 201C SHR DX,CL 201E POP CX 201F LOOP 2008 2021 INT 3
图1-4
5 BCD码转换为二进制数
1) 程序及其流程
设四个二位十进制数的BCD码存放在起始地址为3500H的单元中,转换出的二进制数码存入起始地址为3510H的内存单元中,程序流程图及参考程序如图1-5所示。
地址(H) 助记符 注释 2000 MOV CX,0004 2003 MOV DI,3500 2006 MOV AL,[DI]
2008 ADD AL,AL ;乘2 200A MOV BL,AL
200C ADD AL,AL ;乘2 200E ADD AL,AL ;乘2 2010 ADD AL,BL ;乘10 2012 INC DI 2013 MOV AH,00
2015 ADD AL,[DI]; BCD码十位与个位加
2017 MOV [DI+0F],AX;存结果 图1-5 201A INC DI 201B LOOP 2006 201D INT 3
2) 实验步骤
(1) 输入程序并检查无误。
13
(2) 在3500——3507单元中存入四个十进制数(12,34,56,78)的BCD码,即E3500↙ 输
入01,02,03,04,05,06,07,08。
(3) G=2000↙,运行以上程序。
(4) D3510↙,显示结果为3510 0C 00 22 00 38 00 4E 00
(5) 反复试几组数,考查程序的正确性。
14
实验二 程序设计和PC机上程序调试操作实验
一、 实验目的
1.掌握常用程序设计的基本技巧和方法。
2.学会和熟悉使用MASM汇编程序和LINK连接程序。 3.掌握使用PC机上编程和调试程序的方法。
二、 实验设备
PC机一台,装有DOS基本系统和MASM宏汇编软件
三、 实验内容及步骤
15
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库东华微机实验aaa(3)在线全文阅读。
相关推荐: