好文档 - 专业文书写作范文服务资料分享网站

完整word版,汇编语言期末考试试题及答案,推荐文档

天下 分享 时间: 加入收藏 我要投稿 点赞

STOP:RET

[解析]1)该程序设计的主体应是一个循环——当输入字符的是小写字母(a ~ z)时,就将其转换为大写字母来显示,此过程循环进行,直到当输入的不是小写字母时,程序结束。

2)输入一个字符的可使用DOS的1号功能实现: MOV AH, 1 INT 21H

该DOS调用执行完后,会将输入的字符的ASCII码值送入AL寄存器。 3)判断输入的是否为小写字母(a ~ z)的方法: CMP AL, ‘a’

JB STOP ;不是小写字母时,转STOP CMP AL, ‘z’

JA STOP ;不是小写字母时,转STOP … ;是小写字母时,将其转换为大写显示 STOP: RET ;不是小写字母时,程序结束

4)小写字母比大写字母的ASCII码值大20H,因此指令 SUB AL, 20H,将使AL中的内容变为大写字母的ASCII码值。

5)输出一个字符的可使用DOS的2号功能实现: MOV DL, AL MOV AH, 2 INT 21H

2.设在内存单元SQTAB首址开始存放了0~15的平方数表。要求用直接查表法编一程序,求出A单元中给定数(<=15=的平方值送B单元保存。 答:DATA SEGMENT

SQTAB DB 0,1,4,9,16,25,36,49,64,81 DB 100,121,144,169,196,225 A DB 12 B DB?

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA START PROC FAR PUSH DX XOR AX,AX PUSH AX

MOV AX,DATA MOV DS,AX

MOV BX,OFFSET SQTAB MOV AL,A XLAT

MOV B,AL RET

START ENDP CODE ENDS

11

END START

[解析]1)根据题目的要求,应首先建立0~15的平方数表以及A和B单元: SQTAB DB 0, 1, 4, 9, 16, 25, 36, 49, 64, 81 ;平方数表 DB 100, 121, 144, 169, 196, 225 A DB 12 ;给定数(<=15)

B DB ? ;存放A中数的平方值的结果单元

2)A中给定的数恰好是该数平方值在平方数表中的相对位置,因此,可通过换码指令XLAT来实现从表中求平方值: MOV BX, OFFSET SQTAB MOV AL, A XLAT

12

完整word版,汇编语言期末考试试题及答案,推荐文档

STOP:RET[解析]1)该程序设计的主体应是一个循环——当输入字符的是小写字母(a~z)时,就将其转换为大写字母来显示,此过程循环进行,直到当输入的不是小写字母时,程序结束。2)输入一个字符的可使用DOS的1号功能实现:MOVAH,1INT21H该DOS调用执行完后,会
推荐度:
点击下载文档文档为doc格式
6alns7prl710e609m87w9sc9l3ppnv019xy
领取福利

微信扫码领取福利

微信扫码分享