1.同是天涯沦落人啊,可惜分太少了,但还是要互相帮助的,这是我自己编的程序
data segment
string db "abcdefg$"
data ends
sseg segment
db 80h dup(?)
sseg ends
code segment
assume ds:data,cs:code,ss:sseg
start:
mov ax,data
mov ds,ax
mov si,3
mov dx,4142h
call inschar
mov ah,4ch
int 21h ;以上的都是废话,下面才是要的程序
inschar proc near
lea di,string
again:
cmp byte ptr [di],'$'
jz next1
inc di
jmp again ;利用字符串以‘$'结尾,求长度
next1:
mov bl,[di]
mov [di+2],bl
dec di
cmp di,si
jz jout
jmp next1
jout: mov [si+2],dh
mov [si+1],dl
ret
code ends
end start
这是一个调用的例子,里面INSCHAR PROC NEAR 到RET 就是所求子程序
回答者:我只会汇编 - 助理 二级 7-8 10:49
2。data segment
hex dw 4142h
data1 db 3 dup(?)
data ends
code segment
assume cs:code,ds:data
start: mov ax,data
mov ds,ax
mov ax,hex
mov bp,10
xor bx,bx
mov ch,4
mov cl,4
retry: shr bx,cl
mov dx,0
div bp
ror dx,cl
or bx,dx
dec ch
jnz retry
mov word ptr data1+1,bx ;将转换后的数放到内存中
mov byte ptr data1,al
mov ah,4ch
int 21h
code ends
end start
哈哈,好了,不明白可以发信息问我