. . . .
41h
3.9 解:
(1) al=67h
(2) ax=133h,dx=4h (3) ax=0230h (4) al=41h (4) ax=7654h
3.10 解: (1) 441145h 46h -1 ? 4 4 4 -1 ? 4 4 4 -1 230 0h h h (2) 10h 00h 0fbh 0ffh ? ? ? ? ? 3.11 解:.data
my1b db 'Personal Computer' my2b db 20 my3b db 14h
my4b db 00010100b my5w dw 20 dup(?) my6c = 100
my7c = <'Personal Computer'>
3.12 解:
利用定位伪指令控制,如org,even,align
3.13 解:
包括逻辑地址和类型两种属性。
3.14 解: ;数据段
org 100h
varw dw 1234h , 5678h varb db 3 , 4 vard dd 12345678h buff dd 10 dup(?) mess db 'Hello' ;代码段
mov ax , offset varb + offset mess
mov ax , type buff + type mess + type vard mov ax , sizeof varw+ sizeof buff+ sizeof mess
? 4 4 4 ? 参考
. . . .
mov ax , lengthof varw+ lengthof vard
3.15 解:
(1) 1000超过一个字节所能表达的最大整数 (2)SI应为偶数
(3)两个内存单元不能直接运算 (4)应改为[al+1]
(5)条件转移指令后面应接标号,而不是变量
3.16 解:
3.17 解:
3.18 解: done:
3.19 解: bufX signX next: done: 参考
mov ah,1 ;只允许输入小写字母 int 21h sub al,20h ;转换为大写字母 mov dl,al mov ah,2 int 21h ;显示 mov bx,offset LEDtable mov al,lednum xlat mov ax, bufX cmp ax, bufY jae done mov ax, bufY mov bufZ, ax .model small .stack .data dw -7 db ? .code .startup cmp bufX,0 ;test bufX,80h jl next ;jnz next mov signX,0 jmp done mov signX,-1 .exit 0 end
3.20 解:
next1:
next2:
3.21 解:
restart:
again:
next:
fun0:
fun1:
fun2:
fun3:
fun4:
fun5: </