中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: 汇编语言如何运行? 上一主题 | 下一主题
jjjjj162118
中级用户




积分 268
发帖 40
注册 2004-3-6
状态 离线
『楼 主』:  汇编语言如何运行?

[em24]各位大狭
汇编语言在dos下怎么运行啊?
是直接在命令符后面输入还是要用什么程序?请多多指教啊!!!!!!!!!!!!!!!!!


2004-4-21 00:00
查看资料  发送邮件  发短消息 网志  OICQ (317470881)  编辑帖子  回复  引用回复
Kinglion
铂金会员

痴迷DOS者


积分 5792
发帖 1921
注册 2003-6-20
来自 金獅電腦軟體工作室
状态 离线
『第 2 楼』:  我编写的编译汇编语言的批处理文件。

汇编语言需要匯编並編译成可執行文件以后才能运行,下面是我编写的一个批处理文件,所需要的平台是微软的 MASM 6.11 版,安裝在C:\MASM目錄中.
@ECHO OFF
GOTO TOP

NAME:      MASM.BAT
PURPOSE:   Macro Assembler Version 6.11 Plus & Segmented Executable Linker Version 5.31.009
COPY:      Kinglion Software Warkroom & Dou Jie Hui
VERSION:   1.03 Shareware Version
DATE:      2002.03.24

:TOP
SET HELPFILES=C:\MASM\HELP\*.HLP
SET INCLUDE=C:\MASM\INCLUDE\
SET ASMEX=C:\MASM\SAMPLES\
SET INIT=C:\MASM\INIT\
IF #%1 == # GOTO HELP
IF NOT EXIST %1.ASM GOTO NOFILE
IF EXIST %1.OBJ  DEL %1.OBJ
IF EXIST %1.OLD  DEL %1.OLD
IF EXIST %1.EXE  REN %1.EXE %1.OLD
PATH=C:\PCDOS;C:\DRDOS;C:\TOOLS;C:\MASM\BIN;C:\MASM\BINR;
C:\MASM\BIN\MASM /X /Z %1.ASM,%1.OBJ,NUL.LST,NUL.CRF > NUL
ECHO   Assembling: %1.ASM
ECHO.
ECHO Microsoft (R) Segmented Executable Linker  Version 5.31.009  Jul 13 1992
ECHO Copyright (C) Microsoft Corp 1984-1992.  All rights reserved.
ECHO.
ECHO   Linking: %1.OBJ
ECHO.
IF NOT #%2 == # GOTO NOCOMPRESS
:COMPRESS
C:\MASM\LINK /EXEPACK /PACKCODE /DOSSEG %1.OBJ,%1.EXE,NUL.MAP,,NUL.DEF; > NUL
GOTO CONTINUE
:NOCOMPRESS
C:\MASM\LINK /PACKCODE /DOSSEG %1.OBJ,%1.EXE,NUL.MAP,,NUL.DEF; > NUL
ECHO Microsoft (R) Converts .EXE (executable) files to binary format utility
ECHO Copyright (C) Microsoft Corp 1981-1993.  All rights reserved.
ECHO.
ECHO    Converting: %1.EXE
ECHO.
C:\MASM\EXE2BIN %1.EXE %1.COM > NUL
:CONTINUE
IF EXIST %1.SBR DEL %1.SBR
DEL %1.OBJ
DIR %1.*
GOTO END

:HELP
ECHO.
ECHO Microsoft (R) Macro Assembler Compatibility Driver Version 6.11 Plus
ECHO Copyright (C) Microsoft Corp 1993.  All rights reserved.
ECHO.
ECHO  Usage:
ECHO         MASM   { ASM Program source Filename }
ECHO.
GOTO END

:NOFILE
ECHO.
ECHO Microsoft (R) Macro Assembler Compatibility Driver Version 6.11 Plus
ECHO Copyright (C) Microsoft Corp 1993.  All rights reserved.
ECHO.
ECHO   I''m Sorry, Bad filename or input file not found.
ECHO.
ECHO    Usage:
ECHO           MASM { ASM Program source Filename }
ECHO.
GOTO END

:END
PATH=C:\PCDOS;C:\DRDOS;C:\NWDOS;C:\DOS;C:\UCDOS;C:\TWAY;C:\TOOLS;C:\AV95;C:\QB45;C:\BC5\BIN;
SET HELPFILES=
SET INCLUDE=
SET ASMEX=
SET INIT=


根據 willsort 朋友的指正,特別修正.

[此贴子已经被作者于2004-4-27 11:18:38编辑过]






熟能生巧,巧能生精,一艺不精,终生无成,精亦求精,始有所成,臻于完美,永无止境!
金狮電腦軟體工作室愿竭诚为您服务!
QQ群:8393170(定期清理不发言者)
个人网站:http://www.520269.cn
电子邮件:doujiehui@vip.qq.com
微信公众号: doujiehui
2004-4-21 00:00
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (79207959)  编辑帖子  回复  引用回复
jjjjj162118
中级用户




积分 268
发帖 40
注册 2004-3-6
状态 离线
『第 3 楼』:  

高手啊!佩服!
多谢了!!!!!!!!!!!!
-----------------------------------------------------

2004-4-21 00:00
查看资料  发送邮件  发短消息 网志  OICQ (317470881)  编辑帖子  回复  引用回复
Tony_luo
初级用户




积分 102
发帖 1
注册 2004-4-23
状态 离线
『第 4 楼』:  

写的非常好,谢谢!!!

2004-4-23 00:00
查看资料  发送邮件  发短消息 网志  OICQ (53558548)  编辑帖子  回复  引用回复
Kinglion
铂金会员

痴迷DOS者


积分 5792
发帖 1921
注册 2003-6-20
来自 金獅電腦軟體工作室
状态 离线
『第 5 楼』:  

谢谢夸奖,大家注意了没有,此批处理文件有一个瑕疵。看哪位能看出来。呵呵。
有此问题不能怪我的,因为这个批处理只有我自己使用。上传到论坛来时我忘记将相关的问题改过来了。

今天才发现。



熟能生巧,巧能生精,一艺不精,终生无成,精亦求精,始有所成,臻于完美,永无止境!
金狮電腦軟體工作室愿竭诚为您服务!
QQ群:8393170(定期清理不发言者)
个人网站:http://www.520269.cn
电子邮件:doujiehui@vip.qq.com
微信公众号: doujiehui
2004-4-24 00:00
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (79207959)  编辑帖子  回复  引用回复
王明
初级用户




积分 112
发帖 3
注册 2004-4-23
状态 离线
『第 6 楼』:  

写的非常好

2004-4-26 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
willsort
元老会员

Batchinger


积分 4432
发帖 1512
注册 2002-10-18
状态 离线
『第 7 楼』:  

Re Kinglion:

    一个很中规中矩的批处理,不过正如你所说,因为仅供个人使用,所以存在一些本地化设置问题,需要改动的地方较多。这样的程序,示例则可,应用则免。

    另外,有个问题与你商榷,“汇编语言需要编译以后才能运行”吗?姑且不论汇编语言与汇编代码的区分,仅就编译一词来说,似乎是高级语言产生后才有的术语,将此术语用于低级语言是否恰当,是否改为汇编更为恰当一些。当然 MASM 本身存在一个类似于高级语言编译的过程,但这是因为 MASM 并非纯粹的汇编语言,而是一种宏汇编语言,它所支持的代码中包含的宏指令和伪指令需要这个过程的存在。另外一个常用的汇编指令环境 DEBUG  ,就从侧面验证了这个问题。其中的汇编子命令 -A 支持 8086/80286 汇编指令集,它处理汇编指令的过程是类似于高级语言“解释”过程的“汇编”,而并非“编译”。



※ Batchinger 致 Bat Fans:请访问 [讨论]批处理编程的异类 ,欢迎交流与共享批处理编程心得!
2004-4-26 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Kinglion
铂金会员

痴迷DOS者


积分 5792
发帖 1921
注册 2003-6-20
来自 金獅電腦軟體工作室
状态 离线
『第 8 楼』:  

To willsort:
你說的對,我的一些言詡的確有很多值得商酌的地方,謝謝你的指正.希望能和你多多的進行交流才好.



熟能生巧,巧能生精,一艺不精,终生无成,精亦求精,始有所成,臻于完美,永无止境!
金狮電腦軟體工作室愿竭诚为您服务!
QQ群:8393170(定期清理不发言者)
个人网站:http://www.520269.cn
电子邮件:doujiehui@vip.qq.com
微信公众号: doujiehui
2004-4-27 00:00
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (79207959)  编辑帖子  回复  引用回复
挑战者
初级用户




积分 126
发帖 7
注册 2004-5-9
状态 离线
『第 9 楼』:  

你们 的水平真的高呀
我对这方面不懂,之前也没有学过这些了,现在才发现这个网站,所以以后就跟着各位学学,行吗?
电脑我还是门汉呀,请给我一点支持。
谢谢大家啦

2004-5-9 00:00
查看资料  发送邮件  发短消息 网志  OICQ (273830083)  编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: