
安装DOSBox。
新建一个文件夹作为模拟DOS环境的C分区,这里假定为C:\Users\X\Documents\DOSBOX。
去MSDN I Tell You下载MASM 6.11,双击自解压,然后将其中几个名为DISK?(?是数字)的文件夹合并到一起,放在某个地方备用,假定为C:\Users\X\Downloads\MASM\DISKS。
在开始菜单里打开DOSBox-0.74\Options\DOSBox 0.74 Options,在末尾加上
MOUNT A C:\USERS\X\DOWNLOADS\MASM\DISKSMOUNT C C:\USERS\X\DOCUMENTS\DOSBOX
这两行。
启动DOSBox,执行
A:
SETUP
,开始安装MASM 6.11。安装时选择“MS-DOS/Microsoft Windows”,除了Brief Capability以外其他的组件都装上,其他选项保持默认值即可。
安装完后将DOSBOX\MASM611\BIN下的NEW-VARS.BAT拷贝到DOSBOX目录下来,打开前面提到的DOSBox 0.74 Options,将“MOUNT A ...”一行去掉。至此安装和配置过程已结束。
以后每次使用时启动DOSBox,先执行
C:NEW-VARS
,再切换到ASM文件所在的目录,就可以使用MASM或LINK命令了。然后即可在DOSBox里运行(如果是32位Windows可以直接运行或DEBUG)生成的程序。如果想一步就生成可执行文件,可以用ML。另外强力推荐DOSBox Debugger,功能比Windows自带的DEBUG强几百倍,可以同时观察寄存器、内存和指令,设置断点等等。DOSBox的官方论坛上可以下载,放到DOSBox的安装目录下即可。启动后执行HELP可查看其用法。
用DOS的EDIT可以写源代码,然后保存,汇编,连接,即可生成汇编程序. 具体方法是: 进入DOS,输入EDIT,FILE,NEW,编辑汇编源代码,然后保存(注意扩展名为 .asm),在通过MASM或者TASM即可生成目标文件(.obj),再通过LINK即可生成可执行文件(.exe).C51与汇编语言混合编程(1).C51语言中调用汇编语言程序1、在文件中选中FILEGROUP和C51程序原文件,在配置文件选项中激活“i”产生汇编(SRC)文件,“编译(SRC)文件”和“创建工程(目标)时包含“三个选项。2、根据选择的编译模式,把相应的库文件(如SMALL模式,库文件为KEIL\C51\LIB\C51S.LIB)加入到工程中。3、在C51语言中必须声明需要调用的函数为外部函数。externvoidDELAY(void)4、在汇编语言程序中必须声明被调用子程序为公共子程序,在被调用的文件中还需要声明此文件是新定位的。PUBLICDELAY,DELDELAYYSEGMENTCODERSEGAELAYY实例如下:#include"reg51.h"externvoidDELAY(void)externvoidDEL(void)voidmain(void){P1=0x00DELAY()DEL()P!=0xff}汇编语言文件:PUBLICDELAY,DELDELAYYSEGMENTCODERSEGAELAYYDELAY:MOVR2,#3HDJNZR2,$RETDEL:MOVR3,#3HDJNZR3,$RETEND(2)、C51语言中嵌入汇编程序:在C51语言中嵌套使用汇编语言程序要注意以下几个问题:1、在文件中选中FILEGROUP和C51程序原文件,在配置文件选项中激活“i”产生汇编(SRC)文件,“编译(SRC)文件”和“创建工程(目标)时包含“三个选项。2、根据选择的编译模式,把相应的库文件(如SMALL模式,库文件为KEIL\C51\LIB\C51S.LIB)加入到工程中。3、用#pragmaasm.和#pragmaendasm语句包含嵌入的汇编语言程序。实例如下:#include"reg51.h"voiddelay(void)voidmain(void){voiddelay(void)P1=0x00#pragmaasmMOVR3,#08HDINZR3,$#pragmaendasmP1=0xff}voiddelay(void){#pragmaasmMOVR4,#08HDJNZR4,$#pragmaendasm}欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)