鱼C论坛

 找回密码
 立即注册
查看: 3276|回复: 1

执行adc指令后最高位仍有进位怎么办

[复制链接]
发表于 2018-1-2 11:36:13 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
;第11章


;对功能子程序的测试和验证

assume cs:code,ds:data
data segment
        db 88h,88h,88h,88h,88h,88h,88h,88h,88h,88h,88h,88h,88h,88h,88h,88h
        ;db 11h,11h,11h,11h,11h,11h,11h,11h,11h,11h,11h,11h,11h,11h,11h,11h   
        ;将上面这16个字节改为如下
        db 11h,11h,11h,11h,11h,11h,11h,11h,11h,11h,11h,11h,11h,11h,88h,89h   
data ends


code segment
start : mov ax,data
        mov ds,ax
        mov si,0
        mov di,16

        mov cx,8;

        call add128

        mov ax,4c00h
        int 21h

;编写一个子程序,对两个128位数据进行相加。

;名称:add128
;功能:两个128位数据进行相加
;参数:
;   ds:si指向存储第一个数的内存空间,因数据为128位,所以需要8个字单元,由低地址单元到高地址单元依次存
;   放128位数据由低到高的各个字。运算结果存储在第一个数的存储空间中。

;   ds:di指向存储第二个数的内存空间
add128: push ax
        push cx
        push si
        push di

        sub ax,ax        ;将CF设置为0
      s:mov ax,[si]
        adc ax,[di]
        mov [si],ax
        inc si
        inc si
        inc di
        inc di
        loop s

        pop di
        pop si
        pop cx
        pop ax
        ret      
        
code ends
end start
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-1-3 19:11:06 | 显示全部楼层
继续啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-24 20:52

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表