. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->包含多个段的程序
主题 : :  实验五(5)我这样写有问题吗?  [待解决] 回复[ 2次 ]   点击[ 345次 ]  
kingsgg
[帖 主] [ 发表时间:2012-03-08 23:45 ] 
荣誉值:4
信誉值:6
注册日期:2012-02-25 16:01
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 sebment
start:
    mov ax,a    -->这条不要        (这里我觉得直接用CS的地址比较好,但不知为
    mov ss,ax   -->这条也不要       什么执行后计算结果出错了!有人给个意见吗?)
    mov ax,b
    mov ds,ax
    mov ax,c
    mov es,ax
    mov bx,0
    mov ax,0    
    mov cx,8
s:  mov al,ss:[bx]             (这里我的想法是:mov al,cs:[bx])
    add al,ds:[bx]              
    mov es:[bx],al
    add bx,1
    loop s 
    mov ax,4c00h
    int 21h

code ends
end start

用debug执行到mov ax,4c00h后,
DS=0C88 ES=0C89 SS=0C87 CS=08CA IP=0025
-d 0c89:0 f
0c89:0000  02 04 06 08 0A 0C 0E 10-00 00 00 00 00 00 00 00

-d 0c88:0 f
0c89:0000  01 02 03 04 05 06 07 08-00 00 00 00 00 00 00 00

-d 0c87:0 f
0c89:0000  01 02 03 04 05 06 07 08-00 00 00 00 00 00 00 00

请问这个程序有问题吗,谢谢给出意见!还能再精简一下吗?
kingsgg
[第2楼] [ 回复时间:2012-03-11 20:07 ] 
荣誉值:4
信誉值:6
注册日期:2012-02-25 16:01
感谢tomato提出的意见,给了新人的我很大的鼓励!
需要登录后才能回帖 -->> 请单击此处登录
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved