码迷,mamicode.com
首页 > 编程语言 > 详细

汇编语言--子程序实例

时间:2016-06-10 13:40:16      阅读:484      评论:0      收藏:0      [点我收藏+]

标签:

 1 .8086
 2 .model small
 3 .stack 100
 4 .data
 5     msg db daaaauudc321sdsada,0
 6 .code
 7 ;功能:统计字符串中小写字母的个数 
 8 ;入口DS:DX 
 9 ;出口BX 
10 COUNT    PROC
11         push si
12         push ax        ;保存现场 
13         mov bx,0    ;bx计数 
14         mov si,dx    ;si指针 
15         mov al,[si]
16         .while al != 0
17             .if al >= a && al <= z
18                 inc bx
19             .endif
20             inc si
21             mov al,[si]
22         .endw 
23         pop ax
24         pop si        ;恢复现场 
25         ret    
26 COUNT    ENDP
27 ;功能:输出AX
28 ;入口:AX
29 DISAX    PROC
30         push bx
31         push cx
32         push dx        ;保存现场 
33         or ax,ax
34         jz _0_        ;判断是否为0 
35         mov bx,10    ;bx作为除数 
36 again:    xor dx,dx    ;清零,必须步骤 
37         div bx
38         mov cx,ax    ;cx为商 
39         or cx,dx    ;dx为余数 
40         jz _e_        ;如果商和余数都为0,则结束 
41         push dx        ;保存余数 
42         call again    ;递归调用 
43         pop dx        ;恢复余数 
44         add dl,0     
45         jmp _1_
46 _0_:    mov dl,0
47 _1_:    mov ah,2
48         int 21h
49 _e_:    pop dx
50         pop cx
51         pop bx        ;恢复现场 
52         ret
53 DISAX    ENDP 
54 .startup 
55     lea dx,msg
56     call COUNT
57     mov ax,bx
58     call DISAX
59 .exit
60 end

 

汇编语言--子程序实例

标签:

原文地址:http://www.cnblogs.com/L-King/p/5573579.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!