宏的概念對我來說並不陌生,可是我從不使用宏,而總是使用過程(子程序),因為我覺得宏會使程序變長,雖然它在執行時會比調用子程序快。所以一直對宏不太感冒,直到在看老羅的程序時發現一個有用的宏,它使程序的編寫更簡煉、直觀,並且超出了我想象中的概念,因此我覺得有必要對宏進行再認識。
下面是個小程序,功能很簡單,不過含有一個宏:
------------------------------------------------------------------------
文件名:20-1.ASM
include windows.inc
include kernel32.inc
include user32.inc
includelib kernel32.lib
includelib user32.lib
CTEXT MACRO y:VARARG
LOCAL sym
CONST segment
ifidni ,<>
sym db 0
else
sym db y,0
endif
CONST ends
exitm
ENDM
.code
Start:
invoke MessageBoxA,NULL,CTEXT("Hello, world !"),CTEXT("Hi!"),MB_ICONINFORMATION
invoke ExitProcess,NULL
end Start
---------------------------------------------------------------------------
編譯時增加一個開關項 /EP,作用是Output preprocessed listing to stdout,我們將其改向輸出到 L.txt
D:\MASM7>ml /c /coff /I include /EP 20-1.asm > L.txt
Microsoft (R) Macro Assembler Version 6.14.8444
Copyright (C) Microsoft Corp 1981-1997. All rights reserved.
D:\MASM7>_
---------------------------------------------------------------------------
查看L.txt文件的內容,這是預處理後的內容,注意宏的展開情況:
.386
.model flat, stdcall
option casemap:none
. ;這塊內容很多,都是.inc文件中的定義、聲明等,此處略
.
.
includelib kernel32.lib
includelib user32.lib
.code
Start:
CONST segment
??0019 db "Hello, world !",0
CONST ends
CONST segment
??001A db "Hi!",0
CONST ends
invoke MessageBoxA,NULL,offset ??0019,offset ??001A,MB_ICONINFORMATION
invoke ExitProcess,NULL
end Start
看了以後,心裡是否清楚一些內容?,然後向過去一樣將其生成20-1.exe
---------------------------------------------------------------------------
再看一下這個文件,文件名20-2.asm
.386
.model flat, stdcall
option casemap:none
include windows.inc
include kernel32.inc
include user32.inc
includelib kernel32.lib
includelib user32.lib
.const
xx db "Hello, world !",0
yy db "Hi!",0
.code
Start:
invoke MessageBoxA,NULL,addr xx,addr yy,MB_ICONINFORMATION
invoke ExitProcess,NULL
end Start
---------------------------------------------------------------------------
將上面的文件生成可執行文件20-2.exe,我們作個比較:
D:\MASM7>fc 20-1.exe 20-2.exe /b
Comparing files 20-1.exe and 20-2.exe
000000B8: BD BF
000000B9: 00 03
文件沒有任何的不同。哦,上面不同的是文件的 TimeDateStamp,即生成文件的時間,不影響什麼!
---------------------------------------------------------------------------
再看下面的程序,文件名:20-3.asm,將由它產生20-3.exe文件,運行結果一樣,但程序結構不同(參後)
.386
.model flat, stdcall
option casemap:none
include windows.inc
include kernel32.inc
include user32.inc
includelib kernel32.lib
includelib user32.lib
.code
Start:
cc segment
xx db "Hello, world !",0
cc ends
cc segment
yy db "Hi!",0
cc ends
invoke MessageBoxA,NULL,addr xx,addr yy,MB_ICONINFORMATION
invoke ExitProcess,NULL
end Start
---------------------------------------------------------------------------
看看生成的exe文件吧,這是20-1.exe或20-2.exe的內容,注意它只有兩個section,程序中用到的字符串信息處在.rdata Section中。
0000 4D 5A 90 00 03 00 00 00-04 00 00 00 FF FF 00 00 MZ..............
0010 B8 00 00 00 00 00 00 00-40 00 00 00 00 00 00 00 ........@.......
0020 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0030 00 00 00 00 00 00 00 00-00 00 00 00 B0 00 00 00 ................
0040 0E 1F BA 0E 00 B4 09 CD-21 B8 01 4C CD 21 54 68 ........!..L.!Th
0050 69 73 20 70 72 6F 67 72-61 6D 20 63 61 6E 6E 6F is program canno
0060 74 20 62 65 20 72 75 6E-20 69 6E 20 44 4F 53 20 t be run in DOS
0070 6D 6F 64 65 2E 0D 0D 0A-24 00 00 00 00 00 00 00 mode....$.......
0080 5D 17 1D DB 19 76 73 88-19 76 73 88 19 76 73 88 ]....vs..vs..vs.
0090 19 76 73 88 1E 76 73 88-E5 56 61 88 18 76 73 88 .vs..vs..Va..vs.
00A0 52 69 63 68 19 76 73 88-00 00 00 00 00 00 00 00 Rich.vs.........
00B0 50 45 00 00 4C 01 02 00-BD 00 62 3E 00 00 00 00 PE..L.....b>....
00C0 00 00 00 00 E0 00 0F 01-0B 01 05 0C 00 02 00 00 ................
00D0 00 02 00 00 00 00 00 00-00 10 00 00 00 10 00 00 ................
00E0 00 20 00 00 00 00 40 00-00 10 00 00 00 02 00 00 . ....@.........
00F0 04 00 00 00 00 00 00 00-04 00 00 00 00 00 00 00 ................
0100 00 30 00 00 00 02 00 00-00 00 00 00 02 00 00 00 .0..............
0110 00 00 10 00 00 10 00 00-00 00 10 00 00 10 00 00 ................
0120 00 00 00 00 10 00 00 00-00 00 00 00 00 00 00 00 ................
0130 24 20 00 00 3C 00 00 00-00 00 00 00 00 00 00 00 $ ..<...........
0140 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0150 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0160 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0170 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0180 00 00 00 00 00 00 00 00-00 20 00 00 10 00 00 00 ......... ......
0190 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
01A0 00 00 00 00 00 00 00 00-2E 74 65 78 74 00 00 00 .........text...
01B0 26 00 00 00 00 10 00 00-00 02 00 00 00 02 00 00 &...............
01C0 00 00 00 00 00 00 00 00-00 00 00 00 20 00 00 60 ............ ..`
01D0 2E 72 64 61 74 61 00 00-A6 00 00 00 00 20 00 00 .rdata....... ..
01E0 00 02 00 00 00 04 00 00-00 00 00 00 00 00 00 00 ................
01F0 00 00 00 00 40 00 00 40-00 00 00 00 00 00 00 00 ....@..@........
0200 6A 40 68 1F 20 40 00 68-10 20 40 00 6A 00 E8 0D j@h. @.h. @.j... 這裡是代碼
0210 00 00 00 6A 00 E8 00 00-00 00 FF 25 00 20 40 00 ...j.......%. @.
0220 FF 25 08 20 40 00 00 00-00 00 00 00 00 00 00 00 .%. @...........
0230 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0240 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0250 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0260 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0270 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0280 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0290 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
02A0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
02B0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
02C0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
02D0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
02E0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
02F0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0300 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0310 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0320 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0330 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0340 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0350 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0360 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0370 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0380 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0390 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
03A0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
03B0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
03C0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
03D0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
03E0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
03F0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0400 70 20 00 00 00 00 00 00-8C 20 00 00 00 00 00 00 p ....... ...... 這是.rdata section
0410 48 65 6C 6C 6F 2C 20 77-6F 72 6C 64 20 21 00 48 Hello, world !.H 數據字符串在其中
0420 69 21 00 00 60 20 00 00-00 00 00 00 00 00 00 00 i!..` ..........
0430 7E 20 00 00 00 20 00 00-68 20 00 00 00 00 00 00 ~ ... ..h ......
0440 00 00 00 00 9A 20 00 00-08 20 00 00 00 00 00 00 ..... ... ......
0450 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0460 70 20 00 00 00 00 00 00-8C 20 00 00 00 00 00 00 p ....... ......
0470 75 00 45 78 69 74 50 72-6F 63 65 73 73 00 4B 45 u.ExitProcess.KE
0480 52 4E 45 4C 33 32 2E 64-6C 6C 00 00 BB 01 4D 65 RNEL32.dll....Me
0490 73 73 61 67 65 42 6F 78-41 00 55 53 45 52 33 32 ssageBoxA.USER32
04A0 2E 64 6C 6C 00 00 00 00-00 00 00 00 00 00 00 00 .dll............
04B0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
04C0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
04D0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
04E0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
04F0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0500 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0510 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0520 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0530 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0540 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0550 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0560 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0570 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0580 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0590 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
05A0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
05B0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
05C0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
05D0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
05E0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
05F0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
-------------------------------------------------------------------------
這是20-3.exe文件,有3個section,字符串在.data section中,文件大!
0000 4D 5A 90 00 03 00 00 00-04 00 00 00 FF FF 00 00 MZ..............
0010 B8 00 00 00 00 00 00 00-40 00 00 00 00 00 00 00 ........@.......
0020 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0030 00 00 00 00 00 00 00 00-00 00 00 00 B0 00 00 00 ................
0040 0E 1F BA 0E 00 B4 09 CD-21 B8 01 4C CD 21 54 68 ........!..L.!Th
0050 69 73 20 70 72 6F 67 72-61 6D 20 63 61 6E 6E 6F is program canno
0060 74 20 62 65 20 72 75 6E-20 69 6E 20 44 4F 53 20 t be run in DOS
0070 6D 6F 64 65 2E 0D 0D 0A-24 00 00 00 00 00 00 00 mode....$.......
0080 5D 17 1D DB 19 76 73 88-19 76 73 88 19 76 73 88 ]....vs..vs..vs.
0090 19 76 73 88 1E 76 73 88-E5 56 61 88 18 76 73 88 .vs..vs..Va..vs.
00A0 52 69 63 68 19 76 73 88-00 00 00 00 00 00 00 00 Rich.vs.........
00B0 50 45 00 00 4C 01 03 00-75 04 62 3E 00 00 00 00 PE..L...u.b>....
00C0 00 00 00 00 E0 00 0F 01-0B 01 05 0C 00 02 00 00 ................
00D0 00 04 00 00 00 00 00 00-00 10 00 00 00 10 00 00 ................
00E0 00 20 00 00 00 00 40 00-00 10 00 00 00 02 00 00 . ....@.........
00F0 04 00 00 00 00 00 00 00-04 00 00 00 00 00 00 00 ................
0100 00 40 00 00 00 04 00 00-00 00 00 00 02 00 00 00 .@..............
0110 00 00 10 00 00 10 00 00-00 00 10 00 00 10 00 00 ................
0120 00 00 00 00 10 00 00 00-00 00 00 00 00 00 00 00 ................
0130 10 20 00 00 3C 00 00 00-00 00 00 00 00 00 00 00 . ..<...........
0140 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0150 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0160 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0170 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0180 00 00 00 00 00 00 00 00-00 20 00 00 10 00 00 00 ......... ......
0190 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
01A0 00 00 00 00 00 00 00 00-2E 74 65 78 74 00 00 00 .........text...
01B0 26 00 00 00 00 10 00 00-00 02 00 00 00 04 00 00 &...............
01C0 00 00 00 00 00 00 00 00-00 00 00 00 20 00 00 60 ............ ..`
01D0 2E 72 64 61 74 61 00 00-92 00 00 00 00 20 00 00 .rdata....... ..
01E0 00 02 00 00 00 06 00 00-00 00 00 00 00 00 00 00 ................
01F0 00 00 00 00 40 00 00 40-63 63 00 00 00 00 00 00 ....@..@cc......
0200 13 00 00 00 00 30 00 00-00 02 00 00 00 08 00 00 .....0..........
0210 00 00 00 00 00 00 00 00-00 00 00 00 40 00 00 C0 ............@...
0220 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0230 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0240 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0250 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0260 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0270 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0280 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0290 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
02A0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
02B0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
02C0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
02D0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
02E0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
02F0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0300 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0310 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0320 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0330 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0340 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0350 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0360 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0370 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0380 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0390 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
03A0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
03B0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
03C0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
03D0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
03E0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
03F0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0400 6A 40 68 0F 30 40 00 68-00 30 40 00 6A 00 E8 0D [email protected]@[email protected]... 代碼
0410 00 00 00 6A 00 E8 00 00-00 00 FF 25 00 20 40 00 ...j.......%. @.
0420 FF 25 08 20 40 00 00 00-00 00 00 00 00 00 00 00 .%. @...........
0430 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0440 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0450 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0460 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0470 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0480 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0490 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
04A0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
04B0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
04C0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
04D0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
04E0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
04F0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0500 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0510 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0520 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0530 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0540 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0550 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0560 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0570 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0580 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0590 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
05A0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
05B0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
05C0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
05D0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
05E0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
05F0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0600 5C 20 00 00 00 00 00 00-78 20 00 00 00 00 00 00 \ ......x ...... .rdata section
0610 4C 20 00 00 00 00 00 00-00 00 00 00 6A 20 00 00 L ..........j ..
0620 00 20 00 00 54 20 00 00-00 00 00 00 00 00 00 00 . ..T ..........
0630 86 20 00 00 08 20 00 00-00 00 00 00 00 00 00 00 . ... ..........
0640 00 00 00 00 00 00 00 00-00 00 00 00 5C 20 00 00 ............\ ..
0650 00 00 00 00 78 20 00 00-00 00 00 00 75 00 45 78 ....x ......u.Ex
0660 69 74 50 72 6F 63 65 73-73 00 4B 45 52 4E 45 4C itProcess.KERNEL
0670 33 32 2E 64 6C 6C 00 00-BB 01 4D 65 73 73 61 67 32.dll....Messag
0680 65 42 6F 78 41 00 55 53-45 52 33 32 2E 64 6C 6C eBoxA.USER32.dll
0690 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
06A0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
06B0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
06C0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
06D0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
06E0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
06F0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0700 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0710 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0720 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0730 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0740 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0750 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0760 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0770 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0780 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0790 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
07A0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
07B0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
07C0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
07D0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
07E0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
07F0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0800 48 65 6C 6C 6F 2C 20 77-6F 72 6C 64 20 21 00 48 Hello, world !.H 用到的字符串信息
0810 69 21 00 00 00 00 00 00-00 00 00 00 00 00 00 00 i!..............
0820 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0830 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0840 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0850 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0860 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0870 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0880 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0890 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
08A0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
08B0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
08C0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
08D0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
08E0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
08F0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0900 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0910 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0920 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0930 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0940 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0950 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0960 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0970 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0980 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0990 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
09A0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
09B0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
09C0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
09D0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
09E0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
09F0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................