当前位置: 网学 > 编程文档 > 汇编语言 > 正文

学习汇编前你应该知道的知识4 汇编程序

来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/18
下载{$ArticleTitle}原创论文样式
; INT 21h
code ENDS
END start

4.4 编译运行。
把上面程序保存成hello286.asm后,就可以编译运行了。进入DOS,进入汇编目录,如果还没下载,到前面找下载地址。

=================================================
E:\Download\Masm>masm hello286.asm
Microsoft (R) Macro Assembler Version 5.00
Copyright (C) Microsoft Corp 1981-1985, 1987.   All rights reserved.

Object filename [hello286.OBJ]:
Source listing   [NUL.LST]:
Cross-reference [NUL.CRF]:

   50408 + 415320 Bytes symbol space free

       0 Warning Errors
       0 Severe   Errors
说明:上面连续三个回车,表示我要的都是默认值。下面是零个警告,零个严重错误,(当然了,我的程序还敢错吗?)

E:\Download\Masm>link hello286

Microsoft (R) Overlay Linker   Version 3.60
Copyright (C) Microsoft Corp 1983-1987.   All rights reserved.

Run File [HELLO286.EXE]:
List File [NUL.MAP]:
Libraries [.LIB]:
LINK : warning L4021: no stack segment

说明:三个回车仍要默认,后面有个警告,没有栈段,这个没关系,没有的话系统会自动给一个。

E:\Download\Masm>hello286
Hello, Mr.286.
说明:运行成功。
E:\Download\Masm>
4.4 深度思考
4.4.1 是不是数据必须放数据段,代码必段放代码段呢?
答,代码必段放代码段,否则你怎么执行呀?但数据也可以放到代码段,只是程序要作修改。
code SEGMENT
       ASSUME CS:code,DS:data
       msg DB ''Hello, Mr.286.

  • 上一篇资讯: Arm开发经验
  • 网学推荐

    免费论文

    原创论文

    浏览:
    设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
    版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
    湘ICP备09003080号
    '
    start:MOV AX,data
           MOV DS,AX
           lea dx,msg
           mov ah,9h
           int 21h
           MOV AX,4C00h
           INT 21h
    code ENDS
    END start
    编译后仍然可以。
    4.4.2 我编的程序在内存中是什么样子的呢?
    ------------------------------------------------------------------------
    E:\Download\Masm>debug hello286.exe
    -u
    1420:0000 B81F14         MOV     AX,141F
    1420:0003 8ED8           MOV     DS,AX
    1420:0005 8D160000       LEA     DX,[0000]
    1420:0009 B409           MOV     AH,09
    1420:000B CD21           INT     21
    1420:000D B8004C         MOV     AX,4C00
    1420:0010 CD21           INT     21
    1420:0012 FF362421       PUSH     [2124]
    1420:0016 E87763         CALL     6390
    1420:0019 83C406         ADD     SP,+06
    1420:001C FF362421       PUSH     [2124]
    -d 141
    上一页12345下一页
    点击进入论坛和大家一起交流设计,分享设计素材,结交设计朋友
  • 上一篇资讯: Arm开发经验
  • 下一篇资讯: 学习汇编前你应该知道的知识3 汇编指令
  • 相关资讯

    网学推荐

    免费论文

    原创论文

    文章排行榜

    浏览:
    设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
    版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
    湘ICP备09003080号