lt411c.asm

来自「汇编语言学习的资料希望对大家有很大的帮助啊!!」· 汇编 代码 · 共 42 行

ASM
42
字号
; 教材P121 例4.11C

;计算累加和
;用堆栈传递参数
;入口参数:数组首地址、数组元素个数
;出口参数:AL 累加和
        .model small
        .stack
        .data
count   equ 10
array   db 12h,25h,0f0h,0a3h,03,68h,71h,0cah,0ffh,90h
result  db ?
        .code
        .startup
        mov ax,offset array
        push ax            ;首地址入栈
        mov ax,count
        push ax            ;元素个数入栈
        call checksuma
        add sp,4           ;平衡两个参数占用的堆栈
        mov result,al
        .exit 0
;****************************************************
checksuma proc
        push bp                                      
        mov bp,sp    ;使BP指向刚进入子程序的堆栈顶, 
        push bx                                      
        push cx
        mov bx,[bp+6]
        mov cx,[bp+4]
        xor al,al
suma:   add al,[bx]
        inc bx
        loop suma
        pop cx
        pop bx
        pop bp
        ret         ;可以用RET 4
checksuma endp
        end               

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?