的MOV一部分假设我有一个ASCII字符,如“652 + 346 * 779 =”字符串,我想从这个变量将一些字符到另一个变量...8086组件:一个字符串转换为可变
缓冲区是字符串(在本例中为“652 + 346 * 779 =”) lengthofnum是所讨论数字的长度(在这种情况下,346的长度为3) A_ascii是我尝试的变量运输字符串“346”。
我有一个循环,不会在所有的工作,我不能找出解决方式,我应该使用。 emu8086讨厌一切到目前为止,我已经试过了,并给我的错误我就用MOV指令语法
mov cx,lengthofnum
dumploop1:
mov bx, offset buffer
;dump the number from buffer into A_ascii
mov A_ascii[cx],[bx]+cx
loop dumploop1:
我收到以下错误代码:
(672) wrong parameters: MOV A_ascii[cx],[bx]+cx
(672) probably it's an undefined var: A_ascii[cx]
可能它与我如何声明变量有关? \t A_ascii DW 32 DUP(?),0H \t B_ascii DW 32 DUP(?),0H \t甲DW 32 DUP(?),0H \t乙DW 32 DUP(?),0H \t startofnum DW 00H \t lengthofnum DW 00H 随着你的建议,我得到的错误 (672)错误参数:MOV DX,[BX] + CX (672)可能没有零前缀十六进制;或没有'h'后缀;或错误的寻址;或undefined var:[bx] + cx – user979388