di是16位长,单字节变量是8位长,类型不匹配,当然不可以这么用了。再说,di一般是当作指示器用的(高级语言里的数组下标索引,如:C语言里数组变量 int a[10];int i; i=0; di的作用就类似于变量i的作用)你用mov di, input 就相当于,把一个8位长的数据,塞进16位长的寄存器里,位数不够。
RowSizeB = ($ - tableB)...pushRowSizeB 这种语句在 RadASM 上是可以通过编译的 ;--- 另外:建议在 calc_row_sum 子程序中,让编译器自动平衡堆栈(与您的问题无关,只是建议)
invalid instruction operands是什么意思啊,我在运行汇编程序时,提示这么一个错误,我不知道是什么意思,那个语句是: mov cx,sentence[SI]-1 cmp sentence[SI],ES:keywords[DI] mov cx,ES:keywords[1] cmp sentence[SI],ES:keywords[DI] 就说这几个有问题,到底是哪点有问题呢? 222.241.177.* 那三...
IN1 DB 13,10,'The number is : $'A1 DB 0 ;百位数 A2 DB 0 ;十位数 A3 DB 0 ;个位数 B1 DW 0 ;百位立方 B2 DW 0 ;十位立方 B3 DW 0 ;个位立方 DATAS ENDS CODES SEGMENT ASSUME CS:CODES,DS:DATAS START:MOV AX, DATAS MOV DS, AX MOV CX, 9...
改成这样 MOV SI,offset X1 MOV DI,offset X2 MOV Cl,X3