鱼C论坛

 找回密码
 立即注册
查看: 2646|回复: 7

027_[BX]和loop指令05 视频代码的改写问题

[复制链接]
发表于 2012-1-8 21:18:34 | 显示全部楼层 |阅读模式

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

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

x
源代码如下
assume cs:xx
xx segment

xiaobo: mov ax,0ffffh
        mov ds,ax
        mov bx,0
        mov dx,0
        mov cx,12

s:        mov al,[bx]
        mov ah,0
        add dx,ax
        inc bx
        loop s

        mov ax,4c00h
        int 21h

xx ends
end xiaobo
如上bx是从0加到12的

我突然就想到从12减到0然后相加.

顺便也简化下代码

可是问题来了

代码如下
assume cs:xx
xx segment

xiaobo: mov ax,0ffffh
        mov ds,ax
        mov dx,0
        mov cx,12

s:        mov al,[cx]
        mov ah,0
        add dx,ax
        loop s

        mov ax,4c00h
        int 21h

xx ends
end xiaobo
编译时提示第九行代码错误
错误为error a2031:
具体没给出为什么出错
求解
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-1-9 11:07:55 | 显示全部楼层
我也是刚学,也才刚过这一章,好像  只有 【BX】才可以作为偏移地址  CX不可以,,,错了请高手指点
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-1-9 11:28:06 | 显示全部楼层
assume cs:xx

xx segment


xiaobo: mov ax,0ffffh

        mov ds,ax

        mov bx,12

        mov dx,0

        mov cx,12


s:        mov al,[bx]

        mov ah,0

        add dx,ax

        sub bx,1

        loop s


        mov ax,4c00h

        int 21h


xx ends

end xiaobo


这样也算减法吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-1-9 12:01:12 | 显示全部楼层
本帖最后由 Zero_One 于 2012-1-9 12:07 编辑
assume cs:xx
 xx segment
 
xiaobo: mov ax,0ffffh
        mov ds,ax
        mov bx,12
        mov dx,0
        mov cx,12
s:     mov al,[bx]
        mov ah,0
        add dx,ax
        sub bx,1
        loop s
        mov ax,4c00h
        int 21h
 xx ends
end xiaobo
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2012-1-9 13:46:20 | 显示全部楼层

主要昨天看了一个人的写法
assume cs:codesg

codesg segment

start:
                mov ax,0
                mov cx,100
        s:
                add ax,cx
                loop s
                
                mov ah,4ch
                mov al,00h
                int 21h
codesg ends
end start
所以我就像用CX代替``.
既然CX不能做偏移地址
那估计就不可以了吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-1-9 13:54:54 | 显示全部楼层
我也看到了,特别是12句和13句,:Q差点绕进去,不过才知道可以这么写
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-1-9 14:19:33 | 显示全部楼层
CX一般是作为循环多少次, 没就见过作为偏移地址的。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2012-1-9 14:34:46 | 显示全部楼层
                mov ah,4ch

                mov al,00h

ax=4c00h不是一样么- -
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-10-8 18:31

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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