马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
感觉自己成功作出【课程设计1】之后,有了很大突破,思路清晰了很多。
实验11也很轻松就做出来了。
不得不说,王爽老师的教材写的真好!
;名称:letterc
;功能:将以0结尾的字符串的小写字母转变为大写字母
;参数:ds:si指向字符串首地址
;
;思路:取字符
; 判断是否位0,
; 为0则退出
; 非零则判断范围,范围外,则重新取字符
; 范围内,则第五位置零 and al,1101 1111,然后再来一遍~
;判断字符是否在[61h,7ah]
assume cs:codesg
datasg segment
db "Beginner's All-purpose Symbolic Instruction Code.",0
datasg ends
codesg segment
begin: mov ax,datasg
mov ds,ax
mov si,0
call letterc
mov ax,4c00h
int 21h
letterc:mov cl,[si]
mov ch,0
jcxz letterc_ret
cmp cl,61h
jb next
cmp cl,7ah
ja next
and cl,11011111b
mov [si],cl
inc si
jmp letterc
next: inc si
jmp letterc
letterc_ret: ret
codesg ends
end begin
|