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 ................