;十进制显示非常巧妙
;汇编一点点提高4——查找字符串中是否有空格,如有找出第一个出现的位置用十进制显示,否则输出No blank
DATAS SEGMENT
;此处输入数据段代码
string db '12ABCDE#3 456789143!@Y(78)=(1)'
num equ $-string
found db 'Place='
nn db '01$' ;NN+1、NN+0,分别是个数的十位、个位,都是ASCII码
disf db 'no blank$'
DATAS ENDS
STACKS SEGMENT
;此处输入堆栈段代码
STACKS ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:
MOV AX,DATAS
MOV DS,AX
;此处输入代码段代码
lea bx,string
bagin:
mov ax,[bx]
cmp al,' '
je exit
inc byte ptr nn+1 ;每次加一,仅仅是一个字节,才需要写上:BYTE PTR
cmp byte ptr nn+1,'9'
jna next
mov byte ptr nn+1,'0'
inc byte ptr nn+0
next:
inc bx
cmp bx,num
ja show2
loop bagin
exit:
lea dx,found
jmp show
show2:
lea dx,disf
show:
mov ah,9
int 21h
MOV AH,4CH
INT 21H
CODES ENDS
END START