Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/assembly/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Assembly 组合编程中的简单Mov问题_Assembly - Fatal编程技术网

Assembly 组合编程中的简单Mov问题

Assembly 组合编程中的简单Mov问题,assembly,Assembly,我的程序中有一个小问题,我是一个新手,尝试跟踪英特尔80x86中的程序和cpu寄存器,但问题是当我运行这段代码时 .model small .data array dw 1122H,3344H,5566H,6677H .code mov bx,1 mov si,6 mov ax,array[bx][si-2] AX假设有一个值,但其值为0 任何人都可以告诉运行程序后,AX的值应该是多少 为什么AX没有价值???@RobertHarvey我的问题很简单,一点也不复杂,而且有足够的信息,我真的

我的程序中有一个小问题,我是一个新手,尝试跟踪英特尔80x86中的程序和cpu寄存器,但问题是当我运行这段代码时

.model small 
.data
array dw 1122H,3344H,5566H,6677H
.code 
mov bx,1
mov si,6
mov ax,array[bx][si-2]
AX
假设有一个值,但其值为0 任何人都可以告诉运行程序后,
AX
的值应该是多少
为什么
AX
没有价值???

@RobertHarvey我的问题很简单,一点也不复杂,而且有足够的信息,我真的不知道你为什么要暂停我的问题!!>>虽然我试图编辑它,但希望这次我能提供更多信息。你的最后一行没有意义
array
是一维数组,但您将其视为二维数组。您希望ax具有什么价值?您需要共享更多代码。我假设您使用的是16位汇编程序,我的第一个猜测是您的DS没有正确初始化,因此您查看的内存区域不正确。查看AX中应该得到的代码0x7755。需要注意的是,我已经多年没有使用16位汇编程序了,但是如果您将寄存器更改为32位等效寄存器,那么在最新版本的masm(ml.exe)中类似的代码也可以工作。