![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-10-31 14:55 |
共 47,815 主题排行 / 349,930 发帖 / 今日 0 篇 / 48,290 会员排行 |
| DOS开发编程 & 发展交流 (开发室) » 汇编语言如何运行? |
| 可打印版本 2,038 / 8 |
| 第1楼 jjjjj162118 | 发表于 2004-04-21 00:00 |
| 中级用户 发帖 40 积分 268 | |
|
汇编语言如何运行? 各位大狭
汇编语言在dos下怎么运行啊? 是直接在命令符后面输入还是要用什么程序?请多多指教啊!!!!!!!!!!!!!!!!! |
|
| 第2楼 Kinglion | 发表于 2004-04-21 00:00 |
| 铂金会员 发帖 1,924 积分 5,800 来自 金獅電腦軟體工作室 | |
|
我编写的编译汇编语言的批处理文件。 汇编语言需要匯编並編译成可執行文件以后才能运行,下面是我编写的一个批处理文件,所需要的平台是微软的 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 朋友的指正,特別修正. |
|
| 第3楼 jjjjj162118 | 发表于 2004-04-21 00:00 |
| 中级用户 发帖 40 积分 268 | |
|
高手啊!佩服!
多谢了!!!!!!!!!!!! ----------------------------------------------------- |
|
| 第4楼 Tony_luo | 发表于 2004-04-23 00:00 |
| 初级用户 发帖 1 积分 102 | |
|
写的非常好,谢谢!!!
|
|
| 第5楼 Kinglion | 发表于 2004-04-24 00:00 |
| 铂金会员 发帖 1,924 积分 5,800 来自 金獅電腦軟體工作室 | |
|
谢谢夸奖,大家注意了没有,此批处理文件有一个瑕疵。看哪位能看出来。呵呵。
有此问题不能怪我的,因为这个批处理只有我自己使用。上传到论坛来时我忘记将相关的问题改过来了。 今天才发现。 |
|
| 第6楼 王明 | 发表于 2004-04-26 00:00 |
| 初级用户 发帖 3 积分 112 | |
|
写的非常好
|
|
| 第7楼 willsort | 发表于 2004-04-26 00:00 |
| 元老会员 发帖 1,512 积分 4,432 | |
|
Re Kinglion:
一个很中规中矩的批处理,不过正如你所说,因为仅供个人使用,所以存在一些本地化设置问题,需要改动的地方较多。这样的程序,示例则可,应用则免。 另外,有个问题与你商榷,“汇编语言需要编译以后才能运行”吗?姑且不论汇编语言与汇编代码的区分,仅就编译一词来说,似乎是高级语言产生后才有的术语,将此术语用于低级语言是否恰当,是否改为汇编更为恰当一些。当然 MASM 本身存在一个类似于高级语言编译的过程,但这是因为 MASM 并非纯粹的汇编语言,而是一种宏汇编语言,它所支持的代码中包含的宏指令和伪指令需要这个过程的存在。另外一个常用的汇编指令环境 DEBUG ,就从侧面验证了这个问题。其中的汇编子命令 -A 支持 8086/80286 汇编指令集,它处理汇编指令的过程是类似于高级语言“解释”过程的“汇编”,而并非“编译”。 |
|
| 第8楼 Kinglion | 发表于 2004-04-27 00:00 |
| 铂金会员 发帖 1,924 积分 5,800 来自 金獅電腦軟體工作室 | |
|
To willsort:
你說的對,我的一些言詡的確有很多值得商酌的地方,謝謝你的指正.希望能和你多多的進行交流才好. |
|
| 第9楼 挑战者 | 发表于 2004-05-09 00:00 |
| 初级用户 发帖 7 积分 126 | |
|
你们 的水平真的高呀
我对这方面不懂,之前也没有学过这些了,现在才发现这个网站,所以以后就跟着各位学学,行吗? 电脑我还是门汉呀,请给我一点支持。 谢谢大家啦 |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |