VElist dw 2,40;
dw 3,55;
dw 4,70;
dw 5,60;
dw 6,70;
dw 7,80;
dw 8,170;
dw 9,120;
dw 1,56;
我正在尝试添加所有这些数字,这些数字是这个数字对的第二个数字,例如:40,55,70我键入
mov cx,des
sub cx,beg
mov ax,0
mov di,Beg
add ax,VElist[4*di-1]
我的程序允许我们在1到0之间输入变量" beg"one_answers" des"。
但是汇编器一直告诉我错误信息:在add ax,velist [4*di-1]中使用寄存器无效。
我看不到我做错了什么,如果有人可以帮助我解决这个问题,我会很感激:)
地址模式VElist[4*di-1]
无效。
16位寻址模式中的任何一个都没有比例。
在这里,可用的16位寻址模式的列表:
[BX SI]
[BX DI]
[BP SI]
[bp di]
[si]
[di]
disp16
[BX]
[BX SI] DISP8
[BX DI] disp8
[bp si] disp8
[bp di] disp8
[si] disp8
[di] disp8
[bp] disp8
[bx] disp8
[BX SI] disp16
[BX DI] disp16
[bp si] disp16
[bp di] disp16
[si] disp16
[di] disp16
[bp] disp16
[BX] disp16
有关更多信息,请参阅英特尔手册2第2节。