首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
编制一个程序,其实现的功能为:将内存中从SOURCE开始的区域里存放的20个字节的压缩BCD码转换为ASCⅡ码,每个压缩的BCD码转换为两个ASCⅡ码,并在最高位加上奇校验位,结果存放到RESULT开始的内存区域。 例如: 内存中有:73H,4
编制一个程序,其实现的功能为:将内存中从SOURCE开始的区域里存放的20个字节的压缩BCD码转换为ASCⅡ码,每个压缩的BCD码转换为两个ASCⅡ码,并在最高位加上奇校验位,结果存放到RESULT开始的内存区域。 例如: 内存中有:73H,4
admin
2012-03-05
55
问题
编制一个程序,其实现的功能为:将内存中从SOURCE开始的区域里存放的20个字节的压缩BCD码转换为ASCⅡ码,每个压缩的BCD码转换为两个ASCⅡ码,并在最高位加上奇校验位,结果存放到RESULT开始的内存区域。
例如:
内存中有:73H,45H……
则结果为:37H,B3H,34H,B5H……
部分程序已经给出,其中原始数据由过程LOAD从文件INPUT.DAT中读入以SOURCE开始的内存单元中。运算结果要求从RESULT开始的内存单元存放,由过程SAVE保存到文件OUTPUT.DAT中。
请填空BEGIN和END之间已给出的源程序使其完整,空白已经用横线标出,每行空白一般只需要一条指令,但采用功能相当的多条指令也行,考生也可以删除BEGIN和END之间原有的代码并自行编程来完成要求的功能。
对程序必须进行汇编,并与IO.OBJ链接产生可执行文件,最终运行程序产生结果。调试中若发现整个程序中存在错误之处,请加以修改。
【试题程序】
EXTRN LOAD:FAR,SAVE:FAR
N EQU 20
DSEG SEGMENT
SOURCE DB N DUP(?)
RESULT DB N*2 DUP(0)
NAME0 DB ’INPUT.DAT’,0
NAME1 DB ’OUTPUT.DAT’,0
DSEG ENDS
SSEG SEGMENT STACK
DB 256 DUP(?) SSEG ENDS CSEG SEGMENT
ASSUME CS:CSEG,DS:DSEG,SS:SSEG START PROC FAR
PUSH DS
XOR AX,AX
PUSH AX
MOV AX,DSEG
MOV DS,AX
LEA DX,SOURCE
LEA SI,NAME0
MOV CX,N
CALL LOAD
; ******** BEGIN ********
LEA SI,SOURCE
LEA DI,RESULT
MOV CX,N
AGAIN: MOV AL,[SI]
MOV AH,AL
(1)
AND AH,0FOH
(2)
MOV CL,4
(3)
POP CX
ADD AL,30H
(4) NEXT
OR AL,80H
NEXT: MOV [DI],AL
INC DI
ADD AH,30H
(5) NEXT1
OR AH,80H
NEXT1: MOV [DI],AH
INC DI
INC SI
LOOP AGAIN
; ******** END ********
LEA DX,RESULT
LEA SI,NAME1
MOV CX,N*2
CALL SAVE
RET
START ENDP
CSEG ENDS
END START
选项
答案
(1) ANDAL,0FH (2) PUSH CX(3) SHRAH, CL (4) JNP (5) JNP
解析
题目要求将压缩的BCD码转换为两个ASCⅡ码,则首先要将BCD码分离出来,转换为非压缩的BCD码,然后转换为 ASCⅡ码。最高位要求加奇校验位,所以要对转换以后的数据进行判断,如果数据中1的个数为奇数的话,则直接将其存储到结果存储区,否则要将数据的最高位变为1。
程序中,已经将数据的高4位分离到AH寄存器中,所以还需要将低4位的数据分离到一个寄存器中,有后面的程序可以看出应该分离到AL寄存器中,所以第一个空白处应填写AND AL,0FH。高4位数据分离到AH寄存器以后,需要将数据从高 4位移到低4位来,变成非组合的BCD码。由于移动的位数为4,所以需要使用CL寄存器,而CX寄存器被用来作为程序循环次数的控制器,所以需要在使用CL寄存器之前对CX进行入栈和出栈操作,即第二个空白处应填PUSH CX。第三个空白处执行的是右移操作,所以应填为SHR AH,CL。执行完数据分离以后,将非组合的BCD码转换为ASCⅡ码,转换的时候只需要将非组合的BCD码与30H执行与操作即可。转换完成后,要在量高位加奇校验位,即要对转换后数据中1的个数进行判断,所以最后两个空应填JNP,表示当数据中1的个数为奇数时跳转到数据存储的程序段执行,否则将数据的最高位变为1,然后再进行存储。
转载请注明原文地址:https://kaotiyun.com/show/5KgZ777K
本试题收录于:
三级PC技术题库NCRE全国计算机三级分类
0
三级PC技术
NCRE全国计算机三级
相关试题推荐
为了管理各种各样的设备,并使一些设备在不同的工作模式下能够正常工作,Windows98支持多种类型的设备驱动程序。下面是有关Windows98的设备驱动程序的一些叙述,其中哪个是正确的?
Windows98是由多个模块组成的一个功能强大的操作系统,下列哪个模块负责处理键盘和鼠标的输入,并以窗口、图标、菜单和其他界面元素的形式完成输出任务?
从计算机软硬件资源管理角度来看,操作系统的主要功能包括五个方面:处理器管理、存储管理、文件管理、设备管理和作业管理。其中,存储管理的主要功能是有效地管理系统的存储资源,特别是对下列选项中的哪种资源进行管理?
下面是汇编语言程序设计中关于过程调用和宏调用的叙述,其中错误的是:
PC机中有一种类型为.mid的文件,下面是关于此类文件的一些叙述,其中错误的是:
假设AL寄存器的内容是ASCII码表示的一个英文字母,若为大写字母,将其转换为小写字母,否则不变。试问,下面哪一条指令可以实现此功能?
“图”在PC机中有两种表示方法,一种是图像(image),另一种是图形(graphics)。下列哪一种文件类型是图形文件?
Windows98提供了一些工具程序,帮助用户对注册表进行检查备份、恢复或修改等操作,但在默认情况下用户无法通过“开始”菜单启用这些工具。如需运行“注册表编辑程序”,可在“运行”对话框中执行命令【】。
数字电视比模拟电视具有多方面的优点,但数字视频数据量很大,对存储和传输都是较大的负担,为此必须进行压缩编码。数字电视中视频信号采用的压缩编码标准是
若两片8237A(DMA控制器)工作在级联方式且按下图连接,每个8237A优先级均固定不变,则连接到8237A的DMA请求引脚上的通道2、通道3、通道5、通道6的请求信号,其优先级从高到低的顺序是
随机试题
Inordertolearnaforeignlanguagewell,itisnecessarytoovercomethefearofmakingmistakes.Iftheprimarygoaloflangu
简述海上损失的分类。
恶性黑色素瘤免疫组织化学染色可呈阳性的是
患儿,见脘腹胀满,肚腹作痛,痛则欲泻,泻后痛减,粪便酸臭,不思乳食,夜卧不安,舌苔厚腻。辨证为( )。
在安全防范系统调试检测中,不属于探测器调试检测的项目是()。
银行存款日记账的登记方法正确的有()。
某航空公司2019年年初总占地面积10000平方米,其中:公安局下辖派出所占用土地200平方米,单独建造的地下建筑用地1000平方米(已取得地下土地使用权证)。2019年5月经批准占用耕地500000平方米,并于当月办妥占用耕地手续,其中用
当儿童有不良行为发生后,我们将他立即置于一个单调、乏味的地方,直到定时器响了以后可以离开,这种行为改变的方法是______。
请仔细观察下图,并根据提供的信息回答问题。山东省2009年工业品出厂价格高于上年同期的有几个月?()
Marilyncamebackfromhervacationwith______armsandface.
最新回复
(
0
)