. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
刷新 | 提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->寄存器(内存访问)
  管理员: assembly   [回复本贴] [收藏本贴] [管理本贴] [关闭窗口]
主题 : :  这个是为什么啊  ?  [待解决] 回复[ 5次 ]   点击[ 348次 ]  
fangfuyuheyun
[帖 主]   [ 发表时间:2010-01-20 19:41 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2010-01-15 22:17
mov ax,123b
 mov ds,ax
 add ax,[0]
 add ax,[2]
 add ax,[4]
-t

AX=0000  BX=0000  CX=0000  DX=0000  SP=FFEE  BP=0000  SI=0000  DI=0000
DS=123B  ES=0B5C  SS=0B5C  CS=0B5C  IP=0147   NV UP EI PL ZR NA PE NC
0B5C:0147 B83B12        MOV     AX,123B
-t

AX=123B  BX=0000  CX=0000  DX=0000  SP=FFEE  BP=0000  SI=0000  DI=0000
DS=123B  ES=0B5C  SS=0B5C  CS=0B5C  IP=014A   NV UP EI PL ZR NA PE NC
0B5C:014A 8ED8          MOV     DS,AX

-t

AX=123B  BX=0000  CX=0000  DX=0000  SP=FFEE  BP=0000  SI=0000  DI=0000
DS=123B  ES=0B5C  SS=0B5C  CS=0B5C  IP=012E   NV UP EI PL ZR NA PE NC
0B5C:012E B80000        MOV     AX,0000
-t

AX=0000  BX=0000  CX=0000  DX=0000  SP=FFEE  BP=0000  SI=0000  DI=0000
DS=123B  ES=0B5C  SS=0B5C  CS=0B5C  IP=0131   NV UP EI PL ZR NA PE NC
0B5C:0131 A10000        MOV     AX,[0000]                          DS:0000=0000
-t

AX=0000  BX=0000  CX=0000  DX=0000  SP=FFEE  BP=0000  SI=0000  DI=0000
DS=123B  ES=0B5C  SS=0B5C  CS=0B5C  IP=0134   NV UP EI PL ZR NA PE NC
0B5C:0134 B83B12        MOV     AX,123B
-t

AX=123B  BX=0000  CX=0000  DX=0000  SP=FFEE  BP=0000  SI=0000  DI=0000
DS=123B  ES=0B5C  SS=0B5C  CS=0B5C  IP=0137   NV UP EI PL ZR NA PE NC
0B5C:0137 8ED8          MOV     DS,AX
-t

AX=123B  BX=0000  CX=0000  DX=0000  SP=FFEE  BP=0000  SI=0000  DI=0000
DS=123B  ES=0B5C  SS=0B5C  CS=0B5C  IP=0139   NV UP EI PL ZR NA PE NC
0B5C:0139 B80000        MOV     AX,0000
-t

AX=0000  BX=0000  CX=0000  DX=0000  SP=FFEE  BP=0000  SI=0000  DI=0000
DS=123B  ES=0B5C  SS=0B5C  CS=0B5C  IP=013C   NV UP EI PL ZR NA PE NC
0B5C:013C 03060000      ADD     AX,[0000]                          DS:0000=0000
-t

AX=0000  BX=0000  CX=0000  DX=0000  SP=FFEE  BP=0000  SI=0000  DI=0000
DS=123B  ES=0B5C  SS=0B5C  CS=0B5C  IP=0140   NV UP EI PL ZR NA PE NC
0B5C:0140 03060200      ADD     AX,[0002]                          DS:0002=0000
-t

AX=0000  BX=0000  CX=0000  DX=0000  SP=FFEE  BP=0000  SI=0000  DI=0000
DS=123B  ES=0B5C  SS=0B5C  CS=0B5C  IP=0144   NV UP EI PL ZR NA PE NC
0B5C:0144 A10400        MOV     AX,[0004]                          DS:0004=0000
-
fangfuyuheyun
[第1楼]   [ 回复时间:2010-01-20 19:42 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2010-01-15 22:17
我想提问的是 :为什么 mov ax,123b  mov ds,ax  执行了两次啊  ???
scuzg
[第2楼]   [ 回复时间:2010-01-20 20:39 ]   [引用]   [回复]   [ top ] 
荣誉值:307
信誉值:0
注册日期:2009-03-15 23:46
你是不是想知道为什么不
        mov ds,123b
?
是段寄存器没有直接接受立即数的功能。
由于段寄存器仅用于提供段基址的高16位,因此无须过多的功能。
bigbigwolf
[第3楼]   [ 回复时间:2010-01-21 10:18 ]   [引用]   [回复]   [ top ] 
荣誉值:2
信誉值:0
注册日期:2010-01-13 10:56
楼主在误导啊,我输入代码做的实验和你的实验不符合!!!

代码都放在内存了,执行怎么会多出指令呢,肯定不会。这又不是编译器编译生成的。
---------------------------------
以下是实验:
-a
0B2E:0100 mov ax,123b
0B2E:0103 mov ds,ax
0B2E:0105 add ax,[0]
0B2E:0109 add ax,[2]
0B2E:010D add ax,[4]
0B2E:0111
-t

AX=123B  BX=0000  CX=0000  DX=0000  SP=FFEE  BP=0000  SI=0000  DI=0000
DS=0B2E  ES=0B2E  SS=0B2E  CS=0B2E  IP=0103   NV UP EI PL NZ NA PO NC
0B2E:0103 8ED8          MOV     DS,AX
-t

AX=123B  BX=0000  CX=0000  DX=0000  SP=FFEE  BP=0000  SI=0000  DI=0000
DS=123B  ES=0B2E  SS=0B2E  CS=0B2E  IP=0105   NV UP EI PL NZ NA PO NC
0B2E:0105 03060000      ADD     AX,[0000]                          DS:0000=0000
-t

AX=123B  BX=0000  CX=0000  DX=0000  SP=FFEE  BP=0000  SI=0000  DI=0000
DS=123B  ES=0B2E  SS=0B2E  CS=0B2E  IP=0109   NV UP EI PL NZ NA PO NC
0B2E:0109 03060200      ADD     AX,[0002]                          DS:0002=0000
-t

AX=123B  BX=0000  CX=0000  DX=0000  SP=FFEE  BP=0000  SI=0000  DI=0000
DS=123B  ES=0B2E  SS=0B2E  CS=0B2E  IP=010D   NV UP EI PL NZ NA PO NC
0B2E:010D 03060400      ADD     AX,[0004]                          DS:0004=0000
-t
scuzg
[第4楼]   [ 回复时间:2010-01-21 10:42 ]   [引用]   [回复]   [ top ] 
荣誉值:307
信誉值:0
注册日期:2009-03-15 23:46
bigbigwolf 说得对,我理解错了。
fangfuyuheyun
[第5楼]   [ 回复时间:2010-01-21 18:43 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2010-01-15 22:17
哦 对不住大家了,是我操作失误了,因为我之前输入错了 ,又在这个基础上面输入了,就导致了这个结果,
需要登录后才能回帖 -->> 请单击此处登录
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved