伪指令实例2
;eg2.找出字符串string中ASC码最大的字符。
assume cs:code,ds:data
data segment
string db
'123Hello!'
data ends
code segment
start: mov ax,data
mov ds,ax
mov bx,offset string
mov cl,
[bx
] ;给cl赋初值;用cl存储字符串中ASC码最大的字符的ASCII码的16进制数据
x1:
cmp cl,
[bx
] ;将cl与后面的字符的ASC码比较大小
ja x2
;若前者大,则跳到x2
mov cl,
[bx
] ;若前者小,则重新赋值,然后程序顺序往下执行
x2: inc bx
;bx自增1,即移到字符串下一位
cmp bx,9
;确保bx偏移量未超过字符串的长度
jb x1
;重入循环,将当前最大值与下一个字符比较大小
code ends
end start
截图: 中间的执行步骤太多,故截图省略。 因为将字符串中ASCII码最大的字符存在寄存器CX的低位cl上,故可从CX寄存器存储的数据中得出字符串string中ASCII码最大的字符是6F,即字符’o’。由下图可知: 总结: 继续干巴爹!!!淦就完事儿,嘿嘿