;p234 将任意字符转换为大写。知识点jcxz指令的试用,cx=0转移
;db伪指令的含义:定义字节单元
;and指令的含义,与,置0,and al,11011111b
;call与ret指令配套试用的方法:call指令执行的三个步骤:1.cpu读取call指令到指令缓存器 ;2.ip=ip+指令长度;3.push ip
;ret指令的含义:pop ip
;小写字母的asc2码范围[61h,7ah]
assume cs:codesg
datasg segment
db "Beginner's All-purpose Symbolic Instruction Code.",0
datasg ends
codesg segment
start: mov ax,datasg
mov ds,ax
mov si,0
call letterc
mov ax,4c00h
int 21h
letterc:
mov bh,0
mov bl,ds:[si]
mov al,61h
cmp bl,al
jb s
mov al,7ah
cmp bl,al
ja s
and bl,11011111b
mov ds:[si],bl
s: inc si
mov cx,bx
jcxz ok
jmp letterc
ok: ret
codesg ends
end start |