标题:关于数组操作的指令(罗云彬书上的)
取消只看楼主
toyix
Rank: 1
等 级:新手上路
帖 子:112
专家分:0
注 册:2008-7-14
结帖率:50%
 问题点数:0 回复次数:3 
关于数组操作的指令(罗云彬书上的)
关于数组操作的指令
第一章  讲80386处理器工作模式的时候 ,关于 mov cx,[eax+ebx*2+数组基地址]的解释 我不是很明白,

然后他说在8086处理器实现相同的功能要进行一次乘法和两次加法 ,    不是很明白 ,我没有编写过    能给我举个代码的例子吗 ,最好是 16位 和32位  都举个例子
搜索更多相关主题的帖子: 罗云彬 指令 
2008-09-03 21:44
toyix
Rank: 1
等 级:新手上路
帖 子:112
专家分:0
注 册:2008-7-14
得分:0 
总结   :我好像明白了 ,我感觉 一维,二维都适合吧,比如像num[5][4]:word  这样的数组,就是5行4列 ,如果循环数组   一行就像你说的那样   ,word类型 就乘以2就可以了 ,每一行循环完之后把eax加上  4*2就可以了吧  (因为word类型所以乘以2),我这样理解是你说的意思吧
2008-09-04 06:59
toyix
Rank: 1
等 级:新手上路
帖 子:112
专家分:0
注 册:2008-7-14
得分:0 
还有  忘了说 谢谢了
2008-09-04 07:02
toyix
Rank: 1
等 级:新手上路
帖 子:112
专家分:0
注 册:2008-7-14
得分:0 
我在csdn也提了这个问题    有个答案  是
在8086模式下
mov cx,[eax+ebx*2+数组基地址]该指令就得拆成

示意如下:

Assembly code
mov    cx,ax
mov     ax,bx
mov     bx,2
mul     bx   ;1次乘法
mov     bx,    数组基地址
add     bx, ax ;1次加法
add     bx, cx  ;2次加法
mov     cx, [bx]
可以吧这个16位代码补充完整吗?我16位不行啊
2008-09-05 13:53



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-231277-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.095491 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved