. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
刷新 | 提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->寄存器(内存访问)
  管理员: assembly   [回复本贴] [收藏本贴] [管理本贴] [关闭窗口]
主题 : :  关于MOV ADD SUB指令  [待解决] 回复[ 4次 ]   点击[ 406次 ]  
001vs007
[帖 主]   [ 发表时间:2007-11-06 00:51 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2007-11-04 20:32
ADD   SUB  这两条指令好像必须有通用寄存器才能执行是吗?
哪位能解释下为什么(SUB)ADD 内存单元,数据
                  (SUB)ADD 内存单元,内存单元
是错误的啊?

还有DS为什么不能参加(SUB)ADD运算呢?

这些都通过debug测试出结果了  可为什么不能这样做啊?
请高人指点~
cxn
[第1楼]   [ 回复时间:2007-11-06 10:55 ]   [引用]   [回复]   [ top ] 
荣誉值:179
信誉值:6
注册日期:2007-07-09 19:18
没什么为什么吧,指令格式要求就是这样的.也就是说cpu就是这样设计的.就是不支持帖主说的指令.
sunshine
[第2楼]   [ 回复时间:2007-11-06 15:12 ]   [引用]   [回复]   [ top ] 
荣誉值:106
信誉值:0
注册日期:2007-06-26 15:10
那就是说cpu不支持了.没有什么的啊
fishboy
[第3楼]   [ 回复时间:2007-11-07 10:15 ]   [引用]   [回复]   [ top ] 
荣誉值:283
信誉值:0
注册日期:2007-06-26 11:42
其实,这是由cpu的最基本运算机制决定的。在计算机组成原理中好像讲到过,cpu的运算使通过位操作进行的,需要cup利用寄存器进行位的移动或其他的行为来进行。太详细的我也不记得了。有时间可以看看组成原理,也许能明白具体的过程了。
bug
[第4楼]   [ 回复时间:2007-11-07 15:12 ]   [引用]   [回复]   [ top ] 
荣誉值:22
信誉值:0
注册日期:2007-09-24 10:42
(SUB)ADD 内存单元,数据(立即数)
这种8086是支持的

(SUB)ADD 内存单元,内存单元 
两个内存单元都要寻址,指令长度就太长了,8086不支持。不过有的CPU是支持的。
需要登录后才能回帖 -->> 请单击此处登录
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved