问题描述
我声明了这个数组:
array dw 10 dup(0)
但是当我想以此增加价值时:
mov bx,5
inc array[bx]
将下一个更改为256,将正确的值更改为1: Like this
解决方法
您的数组会初始化内存中的这20个字节:
0,0
说明
mov bx,5
inc array[bx]
会将数组更改为
0,1,0
因为BX
用作从数组开始到字节的偏移量。
您发布的屏幕截图很容易通过尝试可视化数组中单词大小的元素来创建,但是将算法中使用的指针增加1而不是将该指针增加2正确。
0,0 0:
0,0 0:
0,0 0:
0,0 0:
0,1 256:
1,0 1:
0,0 0:
0,0 0:
0,0 0:
0,0 0:
0,0 0:
验证是否是这种情况...