注册 登录
编程论坛 汇编论坛

汇编自己写的简单代码,会的帮忙纠正下错误

gg0013 发布于 2013-07-03 21:53, 709 次点击
DATAS SEGMENT
    arry db 1,2,3,4,5,6,7,8,9,/,*,-,+,0,o,i,u,l,k,j
    count db 20
DATAS ENDS

STACKS SEGMENT
    ;此处输入堆栈段代码
STACKS ENDS

CODES SEGMENT
    ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:
    MOV AX,DATAS
    MOV DS,AX
   
    mov cs,count
    mov bl,0
    mov bh,0
    mov dl,0
    mov dh,0
    lea si,arry
again:cmp arry[si],30h
    jl fuhao
    cmp arry[si],3ah
    jl shuzi
    cmp arry[si],41h
    jl fuhao
    cmp arry[si],5bh
    jl dazimu
    cmp arry[si],61h
    jl fuhao
    cmp arry[si],7bh
    jl xiaozimu
    jmp fuhao
 xiaozimu:
    inc dh
    inc si
    loop again
    jmp exit
 dazimu:
    inc dl
    inc si
    loop again
    jmp exit
 shuzi:
    inc bh
    inc si
    loop again
    jmp exit
 fuhao:
    inc bl
    inc si
    loop again
    jmp exit

exit:
    mov dl,dl
    mov ah,2h
    int 21
    MOV AH,4CH
    INT 21H
CODES ENDS
    END START

用的masm写的 , 那个mov cx,count ;  还有一开头的数据段中arry 字母o,i 之类的,为什么显示定义错误,最后结尾显示, 我的代码就只显示一个。 会的帮忙看下错误
3 回复
#2
gg00132013-07-03 22:28
字符o,i ,的要加单引号, 其他的 还没弄明白
#3
xkwy00002013-07-05 08:21
把代码作为数据修改的方法,有些特殊的场合可能会带来高效率,不过现在已经不经常用到了
最好是找到有价值的实例进行研究
mov cs,count 语法错误,应该使用跳转语句,或是ret跳转
#4
gg00132013-07-06 11:15
这里mov cx, 不是mov cs
1