. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
刷新 | 提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->包含多个段的程序
  管理员: assembly   [回复本贴] [收藏本贴] [管理本贴] [关闭窗口]
主题 : :  实验5.5  [待解决] 回复[ 6次 ]   点击[ 315次 ]  
iomu
[帖 主]   [ 发表时间:2009-03-30 12:55 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2009-01-06 21:37
看了答案感觉答案就一塌糊涂...来论坛看了一个朋友写的,那叫一头大,看别人代码的时候真抓狂

自己弄了个..不知道对不,还有就是S:    S1:啥区别我自己没明白,书上好象没写

麻烦朋友们给俺指出来哪错,     最好顺带把S:   S1:帮说下,我真搞不懂

assume cs:code 
a segment 
db 1,2,3,4,5,6,7,8 
a ends 

b segment 
db 1,2,3,4,5,6,7,8 
b ends 

c segment 
db 0,0,0,0,0,0,0,0 
c ends 

code segment 
start: 

     mov ax,a
     mov es,ax
     mov ax,b
     mov ds,ax
     mov bx,0
     mov cx,8

   s:mov ax,es:[bx]
     add [bx],ax
     add bx,2
     loop s

     mov ax,c
     mov es,ax
     mov bx,0
     mov cx,8

  s1:mov ax,[bx]
     mov es:[bx],ax
     add bx,2
     loop s

   mov ax,4c00h   
    int 21   
code ends   
end start
crazyman
[第1楼]   [ 回复时间:2009-03-30 15:52 ]   [引用]   [回复]   [ top ] 
荣誉值:152
信誉值:3
注册日期:2008-01-24 21:26
s循环体是将a段的数据依次与b段的数据相加,结果更新b段原来的数据。
s1循环体是将上面计算后的b段数据移送到c段中。

就是这么个逻辑啊,没有像楼主说的那么那么恐怖吧。
iomu
[第2楼]   [ 回复时间:2009-03-30 16:40 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2009-01-06 21:37
原来如此....谢楼上地..那我这段程序有错没?
iomu
[第3楼]   [ 回复时间:2009-03-30 16:41 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2009-01-06 21:37
crazyman 很感谢,我在第五章的问题也是你回答地,,谢谢
yanxinyouhzdqb
[第4楼]   [ 回复时间:2009-04-04 14:57 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2009-04-02 12:39
用这个可以不
start
  mov ax,a
  mov ds,ax
  mov ax,b
  mov ss,ax
  mov ax,c
  mov es,ax
  mov bx,0
  mov cx,8
s: add [bx],ss:[bx]
   mov es:[bx,[bx]
   add bx,2
   loop s
yanxinyouhzdqb
[第5楼]   [ 回复时间:2009-04-04 15:03 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2009-04-02 12:39
明白了内存之间不能直接传递
我错大了
yanxinyouhzdqb
[第6楼]   [ 回复时间:2009-04-04 15:06 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2009-04-02 12:39
在我 的基础上改为
 mov ax,ss:[bx]
     add [bx],ax
     mov ax,[bx]
     mov es:[bx],ax
     add bx,2
   之后呢
需要登录后才能回帖 -->> 请单击此处登录
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved