vc6配置汇编环境

环境配置

下载 Recent\Intel汇编语言程序设计_irvine_lib.rar和ml_from_masm32.rar。

将Recent\Intel汇编语言程序设计_irvine_lib.rar解压到C:\asm\irvine目录下,ml.exeml.err拷贝到VCMicrosoft Visual Studio\VC98\Bin目录中。

管理员身份打开vc6,新建一个win32 console application工程。

新建一个text file,粘贴下面代码,保存为text1.asm,右键insert file to the project,然后拖拽到source files目录下。

.386 ; 指示MASM使用386指令集
.model flat, stdcall ; 设置内存模型为平坦模型,并使用stdcall调用约定  
option casemap:none ; 不区分大小写  
 
includelib      msvcrt.lib
printf          PROTO C :ptr sbyte, :vararg
 
.data
szMsg           byte    "Hello World, bo!", 0ah, 0
 
.code
 
start:
 
                mov    eax, OFFSET szMsg
                invoke printf, eax
                ret
 
end             start

 

tools->options->directories,include files和library files都加上C:\asm\irvine路径。

ml /c /coff /Fo$(TargetDir)\$(InputName).obj $(InputPath) 
$(TargetDir)\$(InputName).obj

右键->setting,选择setting for all configurations,然后选中所有asm文件,在右侧commands输入第一行命令,在outputs输入第二行命令。

assem1 files->settings->link,设置all configurations,在object/library module ”中加入irvine32.lib。

现在可以编译运行了。

调试窗口

注意重新用管理员身份打开vc6可能会丢失环境配置,要检查一下前面配置还在不在。

INCLUDE irvine32.inc

.data
	vb1 byte 1,2,3

.code
main proc
		mov esi,offset vb1
		mov al,[esi]
		inc esi
		mov al,[esi]
		inc esi
		mov al,[esi]
		exit ; push 0 ;call   ExitProcess
	main endp
end main

F10进入调试模式,view->debug windows->register,然后在汇编界面右键把code bytes开启。

F11进入_main@0函数,然后可以F10单步执行,或者在某一行F9打断点,F5执行直到断点所在行。(必须在汇编界面才能打断点,不然会显示断点无用)。

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值