首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 汇编语言 >

有点小异常

2012-03-12 
有点小错误Assembly codedata segment inputnum db 252 inputlen db ? inputstrdb 252 dup(?) showwarn db

有点小错误

Assembly code
data segment inputnum db 252 inputlen db ? inputstr  db 252 dup(?) showwarn db 'please input s string(less than 252)$' spcount dw ?data endscode segment assume ds:data,cs:codestart: mov ax,data      ;数据段装入 mov ds,ax ;显示提示字符串 lea dx,showwarn mov ah,09h int 21h ;用户输入字符串 lea dx,inputnum mov ah,0ah int 21h ;初始化各值 mov bx,0 sub ch,ch mov cl,inputlen ;记录实际字符数 add dx,2             ;使得dx指向首个字符 mov si,0             ;作为下标使用again: ;mov ax,20h           ;空格,用于判断 cmp inputstr[si],20h  ;比较字符串中该字符是否为空格 jz turn_handle       ;如果为空格则转向处理 cmp inputstr[si],'$' ;判断是否结束 jz exit              ;结束处理 inc si               ;否则自加,判断下一个字符 jmp again            ;下一次循环turn_handle:  inc bx  dec cl  mov di,1  add di,sirol_again:  mov ax,inputstr[di] //....................  mov inputstr[di-1],ax //...................  inc di  cmp inputstr[di],'$'  jz again  jmp rol_againexit:  lea dx,inputstr  mov ah,09h  int 21h  mov ah,4ch  int 21hcode ends  end start

大家看下两出省略号的地方,那里提示有错,这个我觉得应该没问题啊,大家帮忙找找

[解决办法]
用AL
[解决办法]
mov ax,inputstr[di]
mov inputstr[di-1],ax
改为:
mov ax,word ptr [inputstr+di]
mov word ptr [inputstr+di-1],ax

热点排行