asm 写hello world

hello world

1. 写代码 HelloWorld.asm

	.386
	.model flat,stdcall
	option casemap:none
	
	include windows.inc
	include user32.inc
	includelib user32.lib
	include kernel32.inc
	includelib kernel32.lib
	
		.data
	szText	db	'HelloWorld',0
	
		.code
	start:
		invoke MessageBox, NULL, offset szText, NULL, MB_OK
		invoke ExitProcess,NULL
	end start
	

2. 编译

ml -c -coff HelloWorld.asm

3. 链接

link -subsystem:windows HelloWorld.obj

4. 运行

HelloWorld.exe


-------------------------------------

HelloWorld.exe 大小 为(2,560 字节)

1. 生成1.txt,输入以下内容:

d

d

..

d

q

其中d的个数=2560/(16*8) = 20

2. 将HelloWorld.exe 改名为123

3.运行命令debug 123<1.txt>2.txt

生成的2.txt格式很漂亮 形如

1420:0100  4D 5A 90 00 03 00 00 00-04 00 00 00 FF FF 00 00   MZ..............
1420:0110  B8 00 00 00 00 00 00 00-40 00 00 00 00 00 00 00   ........@.......
1420:0120  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00   ................
1420:0130  00 00 00 00 00 00 00 00-00 00 00 00 B0 00 00 00   ................
1420:0140  0E 1F BA 0E 00 B4 09 CD-21 B8 01 4C CD 21 54 68   ........!..L.!Th
1420:0150  69 73 20 70 72 6F 67 72-61 6D 20 63 61 6E 6E 6F   is program canno
1420:0160  74 20 62 65 20 72 75 6E-20 69 6E 20 44 4F 53 20   t be run in DOS 
1420:0170  6D 6F 64 65 2E 0D 0D 0A-24 00 00 00 00 00 00 00   mode....$.......
-d

1420:0180  5D 5C 6D C1 19 3D 03 92-19 3D 03 92 19 3D 03 92   ]\m..=...=...=..
1420:0190  97 22 10 92 1E 3D 03 92-E5 1D 11 92 18 3D 03 92   ."...=.......=..
1420:01A0  52 69 63 68 19 3D 03 92-00 00 00 00 00 00 00 00   Rich.=..........
1420:01B0  50 45 00 00 4C 01 03 00-C2 D5 29 50 00 00 00 00   PE..L.....)P....
1420:01C0  00 00 00 00 E0 00 0F 01-0B 01 05 0C 00 02 00 00   ................
1420:01D0  00 04 00 00 00 00 00 00-00 10 00 00 00 10 00 00   ................
1420:01E0  00 20 00 00 00 00 40 00-00 10 00 00 00 02 00 00   . ....@.........
1420:01F0  04 00 00 00 00 00 00 00-04 00 00 00 00 00 00 00   ................
-d

1420:0200  00 40 00 00 00 04 00 00-00 00 00 00 02 00 00 00   .@..............
1420:0210  00 00 10 00 00 10 00 00-00 00 10 00 00 10 00 00   ................
1420:0220  00 00 00 00 10 00 00 00-00 00 00 00 00 00 00 00   ................
1420:0230  10 20 00 00 3C 00 00 00-00 00 00 00 00 00 00 00   . ..<...........
1420:0240  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00   ................
1420:0250  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00   ................
1420:0260  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00   ................
1420:0270  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00   ................



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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值