![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-12 06:34 |
共 47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,256 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » [原创]批处理版汇编语言开发工具 |
| 可打印版本 15,116 / 46 |
| 第1楼 netbenton | 发表于 2009-04-01 12:38 |
| 银牌会员 发帖 752 积分 1,916 来自 广西 | |
|
[原创]批处理版汇编语言开发工具 这是一个完全批处理程序。
一、它的功能是,对为它写的汇编语言源程序进行编译生成可执行exe/com文件 而这种源程序支持以下描述: 一),用8088汇编语言指令系统 二),用DB/DW定义数据,并支持重复定义 三),用SET进行变量设置,如同BAT一样使用。 四),支持宏定义,宏扩展,宏嵌套扩展,并支持参数使用 五),支持子过程定义及调用 六),支持重复宏编程, 七),支持if else endif条件宏编程,可多层嵌套。 八),inc宏定义库文件调用 九),数据文件直接嵌入目标程序 十),特色#为头的标号,可作数据可作地址,主程序,宏(多层嵌套),子过程,if宏(多层嵌套)等 之间的标号自然独立,并又可相互引用, 十一),以分号;为注释,可独立一行或在行后 十二),EXE程序的段定义方法简单, 二、不需要系统命令外的任何三方工具, 三、程序指令有错误时,直观报错,方便调试 四、了解8088指令系统后,简单学习本工具编程方法便可以使用该工具 五、程序开源,修改方便,可根据个人需要进行修改扩展, ============================ 2009.8.1 更新为: 版本2.0.2 小提速了一下,增强了示例源码 ============================ 2010.9.25 更新为: 版本2.3.0 1,增加:子过程可以使用参数,并且增加了“invoke” 伪指令,用于带参数调用子过程 2,增加:子过程可以使用局部变量,这样可以轻松的把常用子过程,做成黑箱代码,方便编译和移殖。 3,增加:数据结构定义和使用,并且可用于子过程的局部变量定义中 4,改进了:10进制转16进制的算法,得以小提速 5,增加:自动对较大的源码进行重复调整地址,这样复杂一点的汇编程序也可以用batasm来开发了。 6,增加多行汇编语句连写功能,if else endif 连写功能 7,增加case功能,与else 区别:case的分支只执行一个,而else 则是所有条件成立的。 8,增加使用if@ else@ case@来解决分支过长时的短跳限制问题。 [ Last edited by netbenton on 2010-9-24 at 07:58 ] 附件 batasm2.0.2.rar (20.92 KiB) batasm2.3.rar (23.55 KiB) |
|
| 第2楼 princezhou | 发表于 2009-04-01 13:54 |
| 新手上路 发帖 2 积分 3 | |
|
谢谢分享,太好了!很牛!
|
|
| 第3楼 wja2030 | 发表于 2009-04-02 06:00 |
| 新手上路 发帖 1 积分 1 | |
|
谢谢分享,
|
|
| 第4楼 070 | 发表于 2009-04-03 08:23 |
| 高级用户 发帖 218 积分 663 来自 福建 | |
|
没有想到批处理如此强大!
|
|
| 第5楼 yishanju | 发表于 2009-04-03 08:30 |
| 银牌会员 发帖 1,357 积分 1,488 | |
|
这楼上的简直是史前恐龙,2003年注册的
居然还有存活 |
|
| 第6楼 764873221 | 发表于 2009-04-03 10:56 |
| 新手上路 发帖 3 积分 3 | |
|
好啊 谢谢分享,太好了!很牛!
|
|
| 第7楼 DJ131452DJ | 发表于 2009-04-05 16:19 |
| 初级用户 发帖 44 积分 50 | |
|
谢谢分享,
|
|
| 第8楼 hugreen | 发表于 2009-04-06 06:09 |
| 初级用户 发帖 15 积分 23 | |
|
好东西,收下了,谢谢分享
正想重新学学汇编 |
|
| 第9楼 netbenton | 发表于 2009-04-10 01:01 |
| 银牌会员 发帖 752 积分 1,916 来自 广西 | |
|
看来玩批处理又同时玩汇编的人不多。
本想得到一点意见,然后再完善完善的,都沉到看不见了,花了那么多时间搞的,不甘心就这么消失了。 这可是能促进批处理和汇编的“关系”的东西哦,一个从BAT进入ASM的小小"管道",可以让玩批处理的人也玩玩汇编。 再顶起来看看能否遇到感兴趣的。。。 |
|
| 第10楼 s11ss | 发表于 2009-04-10 01:26 |
| 银牌会员 发帖 566 积分 2,098 | |
|
用debug玩……
|
|
| 第11楼 yishanju | 发表于 2009-04-10 03:48 |
| 银牌会员 发帖 1,357 积分 1,488 | |
|
不知道学汇编的入门在哪里
要哪看哪些书,用哪些工具。。完全不知道。 要不然肯定有兴趣学一学 |
|
| 第12楼 s11ss | 发表于 2009-04-10 05:57 |
| 银牌会员 发帖 566 积分 2,098 | |
Originally posted by yishanju at 2009-4-10 03:48 AM: 王爽和罗云彬的书 |
|
| 第13楼 uchina | 发表于 2009-04-10 23:14 |
| 新手上路 发帖 5 积分 8 | |
|
恩,是好东西啊,谢谢分享
|
|
| 第14楼 netbenton | 发表于 2009-04-12 02:18 |
| 银牌会员 发帖 752 积分 1,916 来自 广西 | |
|
对!
batasm.bat 主要是靠debug来完成, 但是,debug 能支持标号定义,并调用吗?如call 标号 不能,debug 只支持call 1023绝对地址调用 debug可以接收汇编指令的输入,但是顺序一条一条的输入,如果中间有修改,则全部都要修改。 batasm.bat 可以让debug编程差不多像masm一样,并且有些地方更方便,如: 在源码可以这样定义:db "%date%" "%time%" 把实时的系统日期和时间定义到程序中。 batasm.bat 还带有这样一个功能,可以把代码生成16进制数据,在批处理中调用debug来还原为可执行程序。还可以固化为宏代码。 [ Last edited by netbenton on 2009-4-12 at 00:21 ] |
|
| 第15楼 netbenton | 发表于 2009-04-15 01:12 |
| 银牌会员 发帖 752 积分 1,916 来自 广西 | |
|
再顶一次,我感觉应该还可以忧化的,想所速度提上去,只是自己能力有限,不知道怎么搞了,真希望哪位高人能提点一下。
耐心的等。。。 |
|
| 1 2 3 4 下一页 |
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |