早教吧 育儿知识 作业答案 考试题库 百科 知识分享
早教吧考试题库频道 --> 计算机类考试 -->计算机三级 -->

下面一段程序要实现的功能是:在内存中从地址SOURCE开始有一个长度为50的字符串,测试该字符串中是

题目

下面一段程序要实现的功能是:在内存中从地址SOURCE开始有一个长度为50的字符串,测试该字符串中是否存在数字,如有则将DL的第三位置1,否则将该位置0。 BEGIN: MOV CX,50 MOV SI, 0 LP: MOV SOURCE[SI] CMP AL,30H JB GOON CMP AL, ① JA GOON OR DL,20H JMP EXIT GOON: INC SI LOOP LP AND DL, ② EXIT: 则①,②中应为:

A.35H,0DFH

B.35H,0FFH

C.39H,0DFH

D.39H,OFFH

参考答案
正确答案:C
解析:这段程序注意有两个转移语句,JB是在低于,或不高于等于,或进位位为1时转移,JA是在高于或不低于不等于转移。数字的ASCII码值范围是30H~39H,语句CMPAL,30H是和0比较,如果小于0,则转移到GOON,SI加1,继续和下一个比较,如果大于0,再判断是否小于9,即39H。所以第①处填39H。如果大于39H,说明不是数字,则再转移到GOON,SI加1,继续和下一个比较。如果结果没有数字,则执行ORDL,20H指令,将DL的第三位置1,如果有数字,则执行ANDDL,0DFH,将DL的第三位置0。故第②处填ODFH。