得 分 评卷人
六、程序填空题(每空1分,共12分)
设X、Y为WORD型变量。理解以下程序,填写空白。
1. 计算Y=|X|
①
TEST AX, ② ③ NEG AX
POS:MOV ④ , ⑤
2. 调用子程序SR1计算两个无符号字节参数84和96的乘积,将计算结果存入变量Y
中。
SR1 PROC NEAR PUSH BP MOV BP,SP
MOV AL, 81① MOV BL, 91 ② MUL BL
③ ④ SR1 ENDP
START:MOV AX, ⑤ PUSH AX MOV AX,94 PUSH AX
⑥
MOV [Y], ⑦
得 分 评卷人 七、程序设计题(每题6分,共12分)
1. 编写一个函数过程,将高2位在AX中、低2位在BX中用ASCII码表示的4位十
进制数转换为16位二进制数存放在AX中;
汇编语言试卷第6页(共7页)
2. 设程序开头几行为:
.model large .stack 512 .data
weight DQ ?
fmtstr DB ‘weight=’
其中变量weight表示一个64位的双精度浮点型变量,可调用外部无参数远过程getValue计算出变量weight的值,需要调用C语言的格式输出函数printf输出weight变量的值。写出该程序的后续部分,使之程序一个完整的程序。
汇编语言试卷第7页(共7页)