| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 517 人关注过本帖
标题:请教一个关于汇编的问题
取消只看楼主 加入收藏
tutusiwo
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2010-2-28
收藏
 问题点数:0 回复次数:0 
请教一个关于汇编的问题
最近本人初学汇编,在看王爽老师的“汇编语言”第二版。

做书中实验十的第一个子程序时,编写代码如下:

assume cs:code,ds:data,ss:stack

data segment
   
    db 'Welcome to masm!',0

data ends

stack segment

    dw 8 dup(0)

stack ends

code segment

start:
    mov ax,stack
    mov ss,ax
    mov sp,16
    mov dh,8
    mov dl,3
    mov cl,2
    mov ax,data
    mov ds,ax
    mov si,0
    call show_str

    mov ax,4c00h
    int 21h

show_str:
    push ax
    push bx
    push es
    push cx
    push dx
    push si
   
    mov ax,0b800h
    mov es,ax
    dec dl
    dec dh

    mov al,dl
    mov ah,0
    mov bl,160
    mul bl
    mov bx,ax

    mov al,dh
    mov bl,2
    mul bl
    add bx,ax

    s:mov al,[si]
      push cx
      mov cx,ax
      jcxz ok
      pop cx
编译连接成功后程序无法正确运行,提示“CPU遇到无效的指令”。
用DEBUG单步跟踪后发现问题出在IP=0023处,修改该处指令依然不能解决。。。
在下愚钝,想不通原因,发帖请教一下。。。。

多谢帮助。
搜索更多相关主题的帖子: 汇编 
2010-02-28 12:37
快速回复:请教一个关于汇编的问题
数据加载中...
 
   



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

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