assembly language programm--define your own function
**start:
mov ax,12345d ; move data 12345 to ax
call print_num ;call print_num function that defined by yourself
mov ah,4Ch ;INT 21h / AH=4Ch - return control to the operating system (stop program)
int 21h
print_num: ;define your own function
pusha ;push all registers’s data into stack
mov cx,0
mov bx,10d
lp1:
mov dx,0
inc cx ;increase cx,cx will be used in next loop name lp2
div bx ;ax divided by bx
cmp dx,0 ;compare dx with 0
push dx ;push remainder into stack
jne lp1 ;jne means jump if not equal
mov ah,02h
dec cx ;decrease cx
pop dx ;get rid of 0 on the top of stack
lp2:
pop dx ;pop data from stack
add dl,48 ;entry: DL = character to write, ASCII code 48—>0d**
int 21h ;INT 21h / AH=2 - write character to standard output.
loop lp2 ;this loop won’t be end untill cx decrease to 0
popa ;pop out all datas in stack which push in by ‘pusha’ command
output:
还没有评论,来说两句吧...