ASEM-51简介

 本文是对http://plit.de/asem-51/introv13.htm的翻译

历史

1980年,Intel推出了MCS-51系列微控制器的第一个成员8051。今天,数十家厂家提供数百种8051衍生产品。这使MCS-51体系结构对专业和业余爱好者非常有趣。

 

Intel还为MCS-51核定义了8051汇编语言,并提供了一个精心设计的汇编器,传说中ASM51。不幸的是,Intel在1993年12月废弃了其所有MCS-51开发工具,原来的8051汇编器消失了(恕我直言是最好的),不再提供。

 

此时,我开始在一台MS-DOS的286电脑上用Turbo-Pascal写自己的8051汇编器。1994年夏,我觉得可以给人使用了。于是把它命名为ASEM-51,并试图在新闻组发布1.0版,但失败。

 

通过几年改进我的软件技能,1999年,ASEM-51发布在互联网上,这肯定是21世纪的最佳途径。

 

 

特征

ASEM-51是一款针对Intel-MCS51簇的两遍宏汇编器。(汇编时对源程序扫描两遍)它可以运行在PC(个人电脑)的DOS、Windows和Linux系统下。ASEM-51汇编语言是一个基于Intel标准的极大化子集,保证了与现存8051汇编源代码的最大兼容性。ASEM-51能产生两种目标文件:被大多数存储器接受的Intel-HEX格式,被许多仿真器、模拟器、调试器接受的OMF-51格式,ASEM-51适合业余爱好者、教育和商用的中小型基于MCS-51微控制器项目。不仅如此,ASEM-51已经被用于设计非常大型的项目。它的最重要特征如下:

 

  • 快速、紧凑、可靠、易于使用、良好的文档。
  • 安装方便,几乎没有配置要求
  • 命令行操作,批处理和联网能力
  • DOS,Windows,Linux二进制兼容
  • Intel兼容语法
  • 5个本地指针,分配到MCS-51的每个不同地址空间
  • 汇编时计算算术和逻辑表达式
  • 指令操作的段类型检查
  • 通用JMP和CALL的自动代码优化
  • 嵌套包含文件处理
  • 嵌套条件汇编
  • OMF-51模块输出(带调试信息)
  • Intel-HEX格式文件输出
  • hex-to-binary转换工具
  • 为8051的SFR内建符号(能被禁止)
  • 直接支持200多种8051衍生器件
  • 支持用户定义8051衍生器件
  • 特别支持Philips  P83C75x系列
  • 8051寄存器区支持
  • 带符号表和交叉引用的详细汇编列表
  • ASCII和HTML格式的文档
  • 为测试MCS-51目标板的引导程序
  • 支持集成到Borland IDE(for DOS)
  • 作者对于更新方面的限制

 

系统要求 

DOS、Windows或类Unix系统

 

 

实现

ASEM-51软件包用以下工具软件实现:

Borland-Pascal mit Objekten 7.0 © Borland International 1992
Delphi 2.0 Client/Server Suite © Borland International 1996
FreePascal 1.0.6 © Florian Klämpfl 2002

 


 

 

myasm51,小型的51单片机汇编器源码。 基于Linux环境下编写的小型的51单片机汇编器,源码开放,采用lex和yacc两个扫描和分析工具创建,代码小巧,易于研读和分析。对汇编源程序2遍扫描完成汇编,可以生成列表文件,Intel的Hex格式的文件及.bin格式的映像文件,后两种文件可以直接下载到单片机上运行。源码程序包内包含若干示例汇编源程序(.asm),proteus的格式的数字种的仿真文件,用以测试编译结果,另有编译后的dos下的可执行文件myasm51.exe,可以在windows的命令窗口下运行。另外提供一个简明的用户手册以供参考。以下为程序包的README: What is Myasm51 =============== Myasm51 is an open source mini-assembler for the Intel MCS-51 family of microcontrollers or the compatible ones, distributed under the GPL license. By scanning the source file in two pass, Myasm51 translates a symbolic code in text file (assembly language source) into a machine executable object file. During the first pass, the assembler builds a symbol table from the symbols and labels used in the source file. In the second pass, the assembler maps the source file into machine code and generates the listing file through what it receives in the first pass. Myasm51 is an absolute assembler and only generates absolute object files in the plain binary file (with .bin extension) or the Intel Hex file (with .Hex extension) which can be read by any ROM programmer to burn the object code into the ROM space of microcontrollers. How to make =========== We assume that the UNIX utilities yacc and lex have been installed in you system, and following these steps to build Myasm51 by the super user 'root' in the Linux or the UNIX cloned system. # tar zxf myasm51-gk-20151208_121306.tar.gz # cd myasm51 # make # cp myasm51 /usr/local/bin done. How to use ========== [root@rh9 myasm51]# cd examples [root@rh9 examples]# myasm51 Myasm51 Assembler. Ver 0.01 Release 1, (20151231_165818) Snallie@tom.com, Wed Sep 30 17:28:09 CST 2015 built: Dec 31 2015 - 17:04:44 Usage: myasm51 [-o] [-F] [-C] [-d] in.asm where -ob to output binary file 'in.bin' -oh to output hex file 'in.hx' (default format) -oH to output Intel Hex file 'in.Hex' -F to fill free bit with 0 or 1, (default 0) -C to t
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值