首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
编制一个程序,其实现的功能为:将内存中从SOURCE开始的区域里存放的20个字节的压缩BCD码转换为ASCⅡ码,每个压缩的BCD码转换为两个ASCⅡ码,并在最高位加上奇校验位,结果存放到RESULT开始的内存区域。 例如: 内存中有:73H,4
编制一个程序,其实现的功能为:将内存中从SOURCE开始的区域里存放的20个字节的压缩BCD码转换为ASCⅡ码,每个压缩的BCD码转换为两个ASCⅡ码,并在最高位加上奇校验位,结果存放到RESULT开始的内存区域。 例如: 内存中有:73H,4
admin
2012-03-05
36
问题
编制一个程序,其实现的功能为:将内存中从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://jikaoti.com/ti/cM27FFFM
本试题收录于:
三级PC技术题库NCRE全国计算机三级分类
0
三级PC技术
NCRE全国计算机三级
相关试题推荐
PC机中DRAM内存条的类型有多种,若按存取速度从高到低的顺序排列,正确的是:
下面是关于目前流行的PC机主板的叙述:Ⅰ.主板上通常包含微处理器插座(或插槽)和芯片组Ⅱ.主板上通常包含ROMBIOS和存储器(内存条)插座Ⅲ.主板上通常包含PCI和AGP总线插槽Ⅳ.主板上通常包含IDE连接器其中正确的是:
已知:DAT1LABELBYTEDAT2DW0ABCDH依次执行SHLDAT1,1和SHRDAT2,1指令后,DAT2字存储单元中的内容是:
下面哪一个选项中的程序段可以将AX寄存器的高4位移至BX的低4位?
为了实现异构计算机网络的互连,国际标准化组织制定了一个开放系统互连参考模型(OSI/RM)的国际标准。该标准将网络的通信功能划分为上【】个层次。
目前,向PC机输入视频信息的主要途径有如下几种,其中哪几种途经不需要PC机参与将模拟视频信号数字化?Ⅰ.将家用录放像机播放的视频信号输入PC机Ⅱ.将有线电视电缆送来的信号输入PC机Ⅲ.使用数字摄像机拍摄后,通过IEEE-1394接口输入PC机
Windows98虽然是一个比较成熟、健壮的操作系统,但有时也会出现应用程序在运行过程中“不响应”现象。用户如需强行结束一个应用程序,可通过按【】组合键以打开“关闭程序”对话框。
键盘是PC机最基本的输入设备。下面是有关PC机键盘的叙述:Ⅰ.所有PC机键盘的布局和按键个数都相同Ⅱ.PC机键盘的代码生成由键盘和BIOS共同完成,BIOS主要负责把按键的位置码转换为ASCII码Ⅲ.PC机键盘上各个功能键的功能完全由BIOS决
在Windows98提供的系统工具中,可以查看当前系统内核驱动程序(含驱动程序的名称、版本、来源、占用内存空间等信息)的系统工具是【】。
随机试题
A、Ittakesskill.B、Itpayswell.C、It’sfull-timejob.D、It’sadmiredworldwide.A
对生物和环境的生态关系产生变化起到间接作用的生态因子是()。
某男,60岁,高血压4年,有高血压家族史,体查:血压180/100mmHg,心界无扩大,心率78次/min,未闻杂音,血胆固醇62mmol/L,血肌酐105mmol/L,血糖正常某女,56岁,患者未按规定用药,突然出现头痛、呕吐、左侧肢体瘫痪,血压21
医疗活动中,医务人员使用的语言不包括下列哪项
在面板堆石坝堆石体的填筑工艺中,进占法的主要优点是()。
为了适应经济开发区规模不断扩大的需要,某市政府计划在该区内新建一座110kV的变电站。新建变电站周边居住人口密集,站址内有地下给水管道和一幢6层废弃民宅。为加强现场文明施工管理,项目部制订了相应的现场环境保护措施。主要措施如下:措施1:施工前对施工
《招标投标法》中规定,招标投标活动中的招标代理机构应当依法设立,并具备法律规定的条件,以下关于代理的表述中有误的是( )。
来料加工装配项下加工成品出口,免予缴纳()。
在窗体上添加一个命令按钮(名为Commandl)和一个文本框(名为Textl),并在命令按钮中编写如下事件代码:PtivateSubCommandl_Click()m=2.17n=Len(Str$(m)+Space(5))MerTextl=
在一个典型的英国家庭,饮茶是一个古老的传统。最近的研究表明饮茶可以降低患癌症和心脏病的风险,还可以延缓衰老进程。
最新回复
(
0
)