¤W¤@³¹¡A¤p¤ì°¸»¡©ú¤F DEBUG ³Ì±`¥Îªº«ü¥O»P¥Îªk¡A¤]»¡©ú¤F´XÓÆ[©À¡A¹³°O¾ÐÅé¡B¦ì¤¸²Õ¡K¡Kµ¥·§©À¡C³o¤@³¹¤p¤ì°¸n¨Ó»¡©ú¤@¬q·|¤@ª½«½Æ°õ¦æªºµ{¦¡¡A¦¹¬q«½Æ°õ¦æªºµ{¦¡¥iºÙ¬°°j°é ( loop )¡C«½Æ°õ¦æ¬\ÀêµL¨ýªº¨Æ±¡¡A¥i»¡¬O¹q¸£³Ì¾Õªø°µªº¨Æ¡C
²{¦bÅý§Ú̽s¼g¥t¤@Óµ{¦¡¡A³oÓµ{¦¡¯àÅã¥Ü©Ò¦³ªº ASCII ¦r¤¸¡A¨Ã¥B¦¹µ{¦¡ªº®Ö¤ß³¡¤À³£¦b¤W¤@³¹¾Ç¹L¡Cº¥ý¡A¶}±Ò Vistual PC ªº MS-DOS 6.20 µêÀÀ¾÷¾¹¡AµM«á¶i¤J DEBUG¡A¿é¤J¤U±µ{¦¡¡AµM«á°õ¦æ¬Ý¬Ý¡G
C:\>debug [Enter] -a [Enter] 1092:0100 mov ah,2 [Enter] 1092:0102 mov dl,0 [Enter] 1092:0104 int 21 [Enter] 1092:0106 inc dl [Enter] 1092:0108 jmp 104 [Enter] 1092:010A [Enter] -
¥ý§âµ{¦¡¦s¦¨¡uE:\DOS\ASCII.COM¡v¥i°õ¦æÀÉ¡CÀɮפj¤p¥i¥H±q¦ì§}¬Ý¥X¨Ó¡Aµ{¦¡±q¦ì§} 0100 ¶}©l¡A¨ì 0109 µ²§ô¡AÀY§À³£ºâ¡A¦]¦¹¦³ A Ӧ줸²Õ ( ¬Û·í©ó¤Q¶i¦ìªº 10 Ӧ줸²Õ )¡C¦s¦nÀɮ׫á¡A¦A¥H¡uG¡v«ü¥O°õ¦æ¡A¹Lµ{¦p¤U¡G
-r cx [Enter] ¡÷³]©wÀɮפj¤p¬° A Ӧ줸²Õ CX 0000 :a [Enter] -r bx [Enter] BX 0000 :[Enter] -ne:\dos\ascii.com [Enter] ¡÷³]©wÀɦW -w [Enter] ¡÷¼g¤JÀÉ®× Writing 0000A Bytes -g [Enter] ¡÷°õ¦æ
°õ¦æµ²ªG¡A·|¬O¹³¤U±ªº¹Ï§Î¡C³oÓµ{¦¡µLªk°±¤U¨Ó¡A·|¤@ª½°õ¦æ¡A©Ò¦L¥X¨Óªº¦r¤¸·|¤@ª½©¹¤W±²°Ê¡C°²¦pnÅý¥¦°±¤U¨Ó¡A¥²¶·«ö Ctrl-C ©Î Ctrl-Break ¤~¦æ ( «ö¦í Ctrl Á䤣©ñ¡A¦A«ö¤U C Áä©Î Break Áä¡ABreak Áä¦bÁä½Lªº³Ì¥k¤W¨¤ )¡Cµ{¦¡°±¤U¨Ó«á¡A·|¦b¦L¥X¤@¤j°ï¦r¤¸ªº³Ì«á¤@¦æ¥X²{¡u^C¡vªº²Å¸¹¡A³oӲŸ¹¬O«ö¤U Ctrl-C ©Î Ctrl-Break ªºµ²ªG¡Cµ{¦¡°±¤U¨Ó®É¡A¥¿n°õ¦æªº«ü¥O¤Î¦U¼È¦s¾¹ªºÈ¡A¤]·Ó¨Ò¦L¥X¨Ó¡C
¥J²ÓÆ[¹î ASCII.COM¡A©M«e¤@³¹ªº ALPHA_A.COM ¬Û¤ñ¡A´X¥G®t¤£¦h¡C¦h¤F¨â±ø«ü¥O¡G¡uINC DL¡v»P¡uJMP 0104¡v¡A¨ä¥Lªº³¡¤À¡A°£¤F§â DL ³]¬° 0 ¥~¡A©M¦L¥X¡uA¡vªº³¡¤À³£¬Û¦P¡C¥i¥H²q´ú¡A¤£¦Pªº³¡¤À¬O¦L¥X¥Nªí 0 ªº ASCII ½X¡C³oÓµ{¦¡¥u³Ñ¤U¨âÓ¥¼»¡©úªº x86 «ü¥O¤F¡A©³¤U´N»¡»¡§a¡C
INC «ü¥O¬O¼W¥[¤@ ( increment by 1 ) ªº·N«ä¡A¨ä»yªk¬O¡G
INC ¹Bºâ¤¸
INC «ü¥O¬O¨Ï±µ¦b«á±ªº¹Bºâ¤¸¼W¥[¤@¡A³oÓ¹Bºâ¤¸¥i¥H¬O¤K¦ì¤¸©Î¤Q¤»¦ì¤¸ªº¼È¦s¾¹¡A¤]¥i¥H¬OÅܼơC¨Ò¦p©³¤Uªº¨Ò¤l¡A·í°õ¦æ§¹«á¡ACX ¤§È¬°¤@¡C
MOV CX,0 INC CX MOV DX,FFFF INC DX
¤W±ªº¨Ò¤l¡ADX ¤§È쬰 FFFF¡A°õ¦æ§¹¡uINC DX¡v«á¡ADX ·|Åܬ° 0¡A¨Ã²£¥Í¶i¦ì¡C¶i¦ìªº¨Æ±¡¡A²o¯A¨ìºX¼Ð¼È¦s¾¹¡A«á±´X³¹¤~·|´£¨ì¡C
JMP «ü¥O¬O¸õÅD ( jump ) ªº·N«ä¡A¥ç§Y§âµ{¦¡ªº±±¨îÅvÂಾ¨ì°O¾ÐÅ骺¬Y³B¥h°õ¦æ¡A¦Ó¤£¬O°õ¦æ¤U¤@¦ì§}ªº«ü¥O¡CJMP ªº»yªk¬O¡G
JMP °O¾ÐÅé¦ì§}
¦b DEBUG ùØ¥H¡uA¡v«ü¥O½s¼gµ{¦¡¡A¦p¹J¨ì JMP¡A¨ä«á©Ò±µªº°O¾ÐÅé¦ì§}¡A´N¬On¸õÅD¨ìªº°O¾ÐÅé½s¸¹¡F¦ý¬O DEBUG pºâ¥X¨Óªº¾÷±ñ½X«o¤£¬O¹ê»Úªº½s¸¹¡A¦Ó¬O¬Û¹ï¦ì§}¡C
©³¤U¤p¤ì°¸¥H ASCII.COM ¬°¨Ò¤l¡A¸Ô²Ó»¡¤@»¡ JMP «ü¥O¡C¹³¤U±¦b DEBUG ¿é¤J¡uu 100 10a¡v¡AÅý DEBUG ¤Ï²ÕĶ ASCII.COM ªº¾÷±ñ½X¡G
-u 100 10a [Enter]
1092:0100 B402 MOV AH,02
1092:0102 B200 MOV DL,00
1092:0104 CD21 INT 21
1092:0106 FEC2 INC DL
1092:0108 EBFA JMP 0104
1092:010A 1F POP DS
-
·í CPU °õ¦æ¨ì JMP 0104 ®É¡ACPU ·|§ï¼g IP ¤§È¡A¨Ï¥¦Åܦ¨ 0104¡A©ó¬O±±¨îÅv´N¨ì 1092:0104 ³B°õ¦æ¡uINT 21¡v«ü¥O¡A¤£¬O°õ¦æ¤U¤@¦æªº¡uPOP DS¡v«ü¥O¡C
¦ý¬OÀˬd¡uJMP 0104¡vªº¾÷±ñ½X¡A«oµo²{¬O¡uEBFA¡v¡A§¹¥þ¨S¦³¡u0104¡vªº¼ÆÈ¡A¨º»ò¾÷±ñ½X¬°¦ó¬O¡uEBFA¡v©O¡H¨Æ¹ê¤W¡A¡uEB¡v¬O¸õÅD«ü¥O¡A«á±±µµÛªº¾÷±ñ½X¡A¡uFA¡v»P¸õÅD¶ZÂ÷¦³Ãö¡C³oÓ¾÷±ñ½X¨Ã¤£¬Oµ´¹ï¦ì§}¡A¦Ó¬O¶ZÂ÷ JMP «ü¥Oªº¤U¤@±ø«ü¥O¦ì§}¡A¤]´N¬O¡uPOP DS¡vªº¦ì§}¡A010A¡A¦³¦h¤ÖӦ줸²Õ¡C
¦pªG¸õ¨ì¤U¤@±ø«ü¥O¡A¨º»ò¡uEB¡v¤§«áªº¾÷±ñ½X¬°¡u00¡v¡F¦pªG©¹«e¸õÅD ( §Y©¹°ª¦ì§}¸õÅD )¡A´N¥Ñ¡u00¡v©¹¤W¥[¡F©¹«á¸õÅD ( §Y©¹§C¦ì§}¸õÅD )¡A´N¥Ñ¡u00¡v©¹¤U´î¡C¨C¸õ¤@Ӧ줸²Õ¡A´N¼W´î¤@¡C¥i¥H°Ñ¦Ò¥k¹Ï¡C
¡uJMP 0104¡v«ü¥O¦b¦ì§} 0108¡A¤U¤@±ø«ü¥O¬O¡uPOP DS¡v¡A¦b¦ì§} 010A¡CJMP 0104 ¬O©¹§C¦ì§}¸õÅD¡A©Ò¥H¥Ñ¡u00¡v¶}©l¡A¨C¦¸¦V§C¦ì§}¸õ¤@Ӧ줸²Õ¡A´N´î¤@¡C¡u00¡v´î¤@Åܦ¨¡uFF¡v¡A¦A´î¤@Åܦ¨¡uFE¡v¡A¨Ì§Ç¬O FD¡BFC¡BFB¡A¨ì FA ®É¡A©è¹F¦ì§} 0104¡C¦]¦¹¡uJMP 0104¡vªº¾÷±ñ½X´N¬O¡uEBFA¡v¡C
JMP «ü¥O±Ä¥Î³oºØ¬Û¹ï¦ì§}ªº¤è¦¡¸õÅD¡A¦³Ó¦n³B¡C¨º´N¬O·í³oÓµ{¦¡¸ü¤J¦ì§}¤£¬O 0100 ®É¡A§ï¦¨¸ü¤J¨ì¨ä¥L¦ì§}®É¡A©¹°ª¦ì§}©Î§C¦ì§}¸õÅD¦h¤ÖӦ줸²Õ¤´¤£ÅÜ¡A¾÷±ñ½X¤]¤£»Ýn§ïÅÜ¡C¹³³oºØ¥i¥H¸ü¤J¨ì°O¾ÐÅ餣¦Pªº¦ì§}¡A«o¤£¶·«·spºâ¾÷±ñ½X¡A¹ï©ó©¹«á°Æµ{¦¡¡B¥~³¡µ{¦¡®w³£·|¬Ù¥h«Ü¦h³Â·Ð¡C
©³¤U¨Ó½Í½Í ASCII.COM °j°éªº¹B§@¡Cµ{¦¡°õ¦æ®É¡A¥Ñ 1092:0100 ³Bªº²Ä¤@±ø«ü¥O¶}©l°õ¦æ¡A¨Ì§ÇÅý AH Åܬ° 2¡BDL Åܬ° 0¡A±µµÛ°õ¦æ INT 21¡A¦b¿Ã¹õ¤W¦L¥X ASCII ½X¬° 0 ªº¦r¤¸¡C¬d¾\ªþ¿ý¥|¡A±oª¾¦¹¦r¤¸¬O NULL¡A§YªÅ¦r¤¸¡A©Ò¥H¿Ã¹õ¤W¤°»ò³£¨S¦³¡C
¥Ñ INT 21 ªð¦^®É¡AÅý DL ¼W¥[¤@¡A©Ò¥H DL «á¨Ó´NÅܦ¨¤@¡C±µµÛªº«ü¥O¬O¡uJMP 0104¡v¡A©Ò¥Hµ{¦¡¤S¦^¨ì¡uINT 21¡v¡A¦ý³o®ÉÔ DL Åܬ°¤@¡AAH ÁÙ¬O 2¡A©Ò¥H³o®ÉÔ¦L¦b¿Ã¥ú¹õ¤Wªº¬O ASCII ½X¬° 1 ªº¦r¤¸¡A¦P¼Ë¬d ASCII ½Xªí¡A±oª¾¦¹¦r¤¸¬°ªÅ¤ßªº¯ºÁy¡C
µM«á¥Ñ INT 21 ªð¦^®É¡AÅý DL ¼W¥[¤@¡A©Ò¥H DL «á¨Ó´NÅܦ¨¤G¡C±µµÛªº«ü¥O¬O¡uJMP 0104¡v¡A©Ò¥Hµ{¦¡¤S¦^¨ì¡uINT 21¡v¡A¦ý³o®ÉÔ DL Åܬ°¤G¡AAH ÁÙ¬O 2¡A©Ò¥H³o®ÉÔ¦L¦b¿Ã¥ú¹õ¤Wªº¬O ASCII ½X¬° 2 ªº¦r¤¸¡A¦P¼Ë¬d ASCII ½Xªí¡A±oª¾¦¹¦r¤¸¬°¹ê¤ßªº¯ºÁy¡C
¨Ì¦¹Ãþ±À¡A¶g¦Ó´_©l¡A´N¯à§â ASCII ¥þ¦L¦b¿Ã¹õ¤W¡Cª½¨ì DL Åܬ°¡uFF¡v®É¡AY¦A¥[¤@¡A³o®ÉÔ·|µo¥Í¶i¦ì¡A¨Ã¨Ï±o DL Åܦ¨ 00¡C±µµÛ¤S¦^¨ìµ{¦¡è°õ¦æ®É¡A±q¦L¥XªÅ¦r¤¸¡BªÅ¤ßªº¯ºÁy¡B¹ê¤ßªº¯ºÁy¡K¡K¡C³oÓµ{¦¡¶i¤J¤@ÓµL½a°j°é¡A¤£·|°±¤î¡A¥u¯à«ö Ctrl-C µ²§ô¡C
¦]¬°§Ṳ́w§â³oÓµ{¦¡¡A¦s¦¨¡uE:\DOS\ASCII.COM¡v¡A©Ò¥H³oÓµ{¦¡¤]¯à¦b DOS ¤U°õ¦æ¡C¦p¹Ï¡G
ASCII.COM Áö¯à§â©Ò¦³ªº ASCII ¦r¤¸Åã¥Ü¥X¨Ó¡A¦ý¬O³Ì²×ÁÙ¬O¶i¤JµL½a°j°é¦ÓµLªk¥¿±`µ²§ôµ{¦¡¡C¨º»ò¬O§_¦³¤èªk§ï¨}¡Hµª®×¬O¡A¦³ªº¡C©³¤U´N¬O§ï¨}«áªºµ{¦¡¡A¤p¤ì°¸©R¦W¬° ASCII2.COM¡C
C:\>debug -a [Enter] 1092:0100 mov cx,100 [Enter] 1092:0103 mov ah,2 [Enter] 1092:0105 mov dl,0 [Enter] 1092:0107 int 21 [Enter] 1092:0109 inc dl [Enter] 1092:010B loop 107 [Enter] 1092:0100 int 20 [Enter] 1092:0100 [Enter] -
¨ä°õ¦æµ²ªG¡A¦p¤U¹Ï¡C·í¤U¹F¡uG¡v«ü¥O«á¡ADEBUG ¥u¦L¥X¤@¬q¤å¦r¡A´N¥X²{¡uProgram terminated normally¡v¡Aªí¥Üµ{¦¡¥¿±`µ²§ô¡C
¥ý¤Ï²ÕĶ¬Ý¬Ý ASCII2 ªºµ{¦¡¤º®e¡G
-u 100 10d
1092:0100 B90001 MOV CX,0100
1092:0103 B402 MOV AH,02
1092:0105 B200 MOV DL,00
1092:0107 CD21 INT 21
1092:0109 FEC2 INC DL
1092:010B E2FA LOOP 0107
1092:010D CD20 INT 20
-
¤ñ¸û ASCII.COM »P ASCII2.COM¡Aµo²{¦³¤T³B¤£¦P¡G①¦h¤F¡uMOV CX,100¡v¡C②¡uJMP¡v«ü¥O§ï¦¨¡uLOOP¡v¡C③¦h¤F¡uINT 20¡v«ü¥O¡C
³Ì«á¤@Ó¤£¦Pªº¦a¤è¡AINT 20¡A¥i¥H¤£¥²¸ÑÄÀ¡A´N¬Oµ²§ôµ{¦¡¡A¦b¤§«e¤w¸g´£¹L¡C²Ä¤@Ó¤£¦Pªº¦a¤è¡A¬OÅý CX ¼È¦s¾¹Åܦ¨¤Q¤»¶i¦ìªº 100¡A¤Q¤»¶i¦ìªº 100¡Aµ¥©ó¤Q¶i¦ìªº 256¡A³o¨ä¹ê¬O ASCII ¦r¤¸ªº¼Æ¥Ø¡C´«¥y¸Ü»¡¡A¦L¥X¦r¤¸ªºµ{¦¡n«½Æ 256 ¦¸¡A³o»P©³¤Un¤¶²Ðªº¡uLOOP¡v«ü¥O¦³Ãö¡C
LOOP ¬Oӫܦ³¥Îªº«ü¥O¡A¥¦¥i¥HÅý¬Y¤@¬qµ{¦¡«½Æ°õ¦æ«Ü¦h¦¸¡C¨Ï¥Î¤èªk¬O
MOV CX,¦¸¼Æ XXXX ⁝ ⁝ LOOP XXXX YYYY ⁝
¤W±ªº XXXX¡BYYYY ¬O°O¾ÐÅé¦ì§}¡A¤@¶}©ln¥ý³]©w¦n CX ¬°°õ¦æªº¦¸¼Æ ( CX ¥¿¦¡¦WºÙ¬Op¼Æ¼È¦s¾¹¡Acount register¡Aªº·N«ä¡A·íªì^¯Sº¸±N¦¹¼È¦s¾¹¨ú¦W¬° CX¡A¨Ã«DÀH·N¶Ã¨úªº )¡CCPU °õ¦æ¨ì XXXX ¦ì§}®É¡A¨Ì§Ç°õ¦æ¦U¶µ«ü¥O¡A°õ¦æ¨ì LOOP ®É¡ALOOP «ü¥O·|¥ý§â CX ¤§È´î¤@¡A¦AÀˬd CX¡F¦pªG CX µ¥©ó¹s¡ACPU ´N·|°õ¦æ¦ì§} YYYY ªº«ü¥O¡F¦pªG CX ¤£µ¥©ó¹s¡ACPU ·|§â±±¨îÅvÂಾ¨ì XXXX¡A©ó¬O¤S°õ¦æ¤@¦¸ XXXX ¨ì LOOP ¤§¶¡ªº«ü¥O¡C
¹³³o¼Ë¦b XXXX »P LOOP ¤§¶¡ªº«ü¥O¡A¥u¼¶¼g¤@¹M¡A«o¥i¥H°õ¦æ«Ü¦h¦¸ªºµ{¦¡¡AºÙ¬°°j°é¡C¦p¦¹¤@ª½«½Æ¡A¨C°õ¦æ¤@¦¸³£·|Åý CX ¤§È´î¤@¡Aª½¨ìÅܬ° 0¡A¤~·|¸õ¥X°j°é¡A°õ¦æ YYYY ³Bªº«ü¥O¡C
¨Ï¥Î LOOP «ü¥O®É¡Anª`·N´X¥ó¨Æ±¡¡C²Ä¤@¡Anª`·N CX ¤§È¡A¦b°j°é¤º CX ¤§È³Ì¦n¤£nÅÜ°Ê¡A§_«h¥i¯à·|©M¹w´Á¤£¦P¡C²Ä¤G¡ALOOP «ü¥O«á±±µµÛªº¦ì§} XXXX¡A©M JMP ªº¤@¼Ë¡A³£¬O¬Û¹ï©ó YYYY ªº¦ì§}¡A¦]¦¹³Ì¦h¥u¯à©¹«e¸õÅD 127 Ӧ줸²Õ¡A©Î©¹«á¸õÅD 128 Ӧ줸²Õ¡A¤£¥i¶W¹L¦¹½d³ò¡C
²{¦b¨Ó°lÂÜ ASCII2.COM¡A¬Ý¬Ý LOOP «ü¥O¬O¦p¦ó¹B§@ªº¡Cº¥ý¥Î DEBUG ¸ü¤J¡uE:\DOS\ASCII2.COM¡v¡A¦p¤U¡G
C:\>debug e:\dos\ascii2.com [Enter] -r [Enter] ¡÷Àˬd¼È¦s¾¹ AX=0000 BX=0000 CX=0000 DX=0000 SP=FFFE BP=0000 SI=0000 DI=0000 DS=1092 ES=1092 SS=1092 CS=1092 IP=0100 NV UP EI PL NZ NA PO NC 1092:0100 B90001 MOV CX,0100 -g 107 [Enter] ¡÷ª½±µ°õ¦æ¨ì³]©w«½Æ¦¸¼Æ AX=0200 BX=0000 CX=0100 DX=0000 SP=FFFE BP=0000 SI=0000 DI=0000 DS=1092 ES=1092 SS=1092 CS=1092 IP=0107 NV UP EI PL NZ NA PO NC 1092:0107 CD21 INT 21 -p [Enter] ¡÷¦¹³B·|¦L¥X 00 ªº ASCII ¦r¤¸¡A¦¹¦r¤¸¬OªÅ¦r¤¸¦]¦¹¬Ý¤£¨£¡A¥u¯d¤UªÅ¦ì AX=0200 BX=0000 CX=0100 DX=0000 SP=FFFE BP=0000 SI=0000 DI=0000 DS=1092 ES=1092 SS=1092 CS=1092 IP=0109 NV UP EI PL NZ NA PO NC 1092:0109 FEC2 INC DL -t [Enter] ¡÷¡uINT 21¡v»P¡uINC DL¡v³o¨âÓ«ü¥O¦b°j°é¤º¡A·|«½Æ°õ¦æ 256 ¦¸ AX=0200 BX=0000 CX=0100 DX=0001 SP=FFFE BP=0000 SI=0000 DI=0000 DS=1092 ES=1092 SS=1092 CS=1092 IP=010B NV UP EI PL NZ NA PO NC 1092:010B E2FA LOOP 0107 -t [Enter] ¡÷°õ¦æ§¹ LOOP «á¡ACX ´î¤@¡A¨Ã¸õÅD¨ì¦ì§} 0107 AX=0200 BX=0000 CX=00FF DX=0001 SP=FFFE BP=0000 SI=0000 DI=0000 DS=1092 ES=1092 SS=1092 CS=1092 IP=0107 NV UP EI PL NZ NA PO NC 1092:0107 CD21 INT 21 -p [Enter] ¡÷²Ä¤G¦¸°õ¦æ¦L¥X ASCII ¦r¤¸¡A¦¹¦r¤¸¬°½s¸¹¤@ªº ASCII ¦r¤¸¡A¬O¤@ӪŤߪº¯ºÁy ☺
±µ¤U¨Ó¡A¤S·|¦A¦¸«½Æ¡A¤p¤ì°¸´N¤£¦A»¡©ú¡A¶È¦C¥X¾Þ§@¤Îµ²ªG¡A¦p¤U¡G
AX=0201 BX=0000 CX=00FF DX=0001 SP=FFFE BP=0000 SI=0000 DI=0000 DS=1092 ES=1092 SS=1092 CS=1092 IP=0109 NV UP EI PL NZ NA PO NC 1092:0109 FEC2 INC DL -t [Enter] AX=0201 BX=0000 CX=00FF DX=0002 SP=FFFE BP=0000 SI=0000 DI=0000 DS=1092 ES=1092 SS=1092 CS=1092 IP=010B NV UP EI PL NZ NA PO NC 1092:010B E2FA LOOP 0107 -t [Enter] AX=0200 BX=0000 CX=00FE DX=0002 SP=FFFE BP=0000 SI=0000 DI=0000 DS=1092 ES=1092 SS=1092 CS=1092 IP=0107 NV UP EI PL NZ NA PO NC 1092:0107 CD21 INT 21 -p [Enter] ☻ AX=0202 BX=0000 CX=00FE DX=0002 SP=FFFE BP=0000 SI=0000 DI=0000 DS=1092 ES=1092 SS=1092 CS=1092 IP=0109 NV UP EI PL NZ NA PO NC 1092:0109 FEC2 INC DL -t [Enter] AX=0202 BX=0000 CX=00FE DX=0002 SP=FFFE BP=0000 SI=0000 DI=0000 DS=1092 ES=1092 SS=1092 CS=1092 IP=010B NV UP EI PL NZ NA PO NC 1092:010B E2FA LOOP 0107 -p [Enter] ¡÷ÁÙ·|¦A°õ¦æ 253 ¦¸¡A¤£¥²¦A¤@¨B¤@¨B°lÂܤF¡A°õ¦æ P «ü¥O¡A¤@¦¸µ²§ô°j°é ♥♦♣ ♬☼►◄↕‼¶§▃↨↑↓←→¡x↔¡¶¡¿!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\] ^_'abcdefghijklmnopqrstuvwxyz{|}~⌂ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧áíóúñѪº¿⌐¬½¼¡ «»░▒▓│┤╡╢╖╕╣║╗╝ù÷ùî┐¢|¢r¢s¢u¢w¢qùéùòùãùÝùäùÞùàùùùáùíùöùçùðùõùìùæùïùóùê¢}¢z¢i¢e¢m▐▀£\£]£F£S£U£m£g£n£X£c£[£_¡Û£p∈¡ä¡Ý¡Ó≥≤⌠⌡¡Ò≈°∙⋅¡Ôⁿ² ■ AX=02FF BX=0000 CX=00FF DX=0000 SP=FFFE BP=0000 SI=0000 DI=0000 DS=1092 ES=1092 SS=1092 CS=1092 IP=010D NV UP EI PL NZ NA PO NC 1092:010D CD20 INT 20 -
²Ó¤ßªºÅªªÌ¡A¥i¯à·|°Ý¡AASCII.COM ©Î ASCII2.COM ¦L¥X¨Óªºµ²ªG«Ü©_©Ç¡A¬°¤°»ò¡u♣¡v¤§«á·|´«¦æ©O¡H¬°¤°»ò¡u♠¡v¤£¨£¤F©O¡H³o¨Ç°ÝÃDªºµª®×¡A¸ò±±¨î¿Ã¹õ¦ì¸mªº¦r¤¸¦³Ãö¡C
¨Æ¹ê¤W¡A¦b ASCII ½s¸¹¤p©ó 32 ªº¦r¤¸¤¤¡A¤j¦h¬O±±¨î©PÃä³]³Æªº¦r¤¸¡A¦³¨Ç¯à¦L¥X¦r¤¸¨Ó¡A¦³¨Ç¥u¯à¬Ý¨£®ÄªG¡A³o¨Ç¦r¤¸³£ºÙ¬°±±¨î¦r¤¸¡C©³¤UÁ|´XÓ±`¨£ªº¨Ò¤l¡G
ASCII ½X | ¦r¤¸ | ¦WºÙ | ´yz | |
¤Q¶i¦ì | ¤Q¤»¶i¦ì | |||
7 | 7 | ¹aÁn bell |
¹aÁn¡A¦pªG¡u¦L¡v¥X³oÓ¦r¤¸ªº¸Ü¡A·|Åý¹q¸£³â¥zµo¥X¡u¹Í¡vªºÁnÅT¡A¿Ã¹õ¤W¤£·|¦L¥X¦r¨Ó¡C | |
8 | 8 | °h®æ¦r¤¸ backspace |
§â´å¼Ð¦V¥ª²¾°Ê¤@®æ¡A¨Ã§R°£¸Ó¦ì¸m¤Wªº¦r¤¸«á¡A¦A§â¥kÃ䪺¤å¦r©¹¥ª²¾°Ê¤@®æ¡C | |
9 | 9 | ¤ô¥©w¦ì¦r¤¸ horizontal tabulation |
§â´å¼Ð¦V¥k²¾¨ì©T©wªº¦ì¸m¡A¤¤¶¡¥HªÅ¥Õ¶ñº¡¡C¦¹©T©w¦ì¸m¬°¤Kªº¿¼Æ¦A©¹¥k¤@®æªº¦ì¸m¡C | |
10 | A | ´«¦æ¦r¤¸ line feed |
§â´å¼Ð²¾¨ì¤U¤@¦æªº¦P¤@¦ì¸m¡C¦ý¬O¦pªG´å¼Ð¤w¸g¦b³Ì«á¤@¦æ¤F¡A¨º´N·|¦b³Ì«á¤@¦æ¦A·s¼W¤@¦æ¡A¨Ã¨Ï´å¼Ð¦b·s¼W¤@¦æªº³Ì¥ªÃä¡C | |
13 | D | ♪ | Âk¦ì¦r¤¸ carriage return |
§â´å¼Ð²¾¨ì¤@¦æªº³Ì¥ªÃä¡C |
ÁA¸Ñ¤F¤W±ªº±±¨î¦r¤¸«á¡A§ÚÌ´N¯à©ú¥Õè¤~¨º¨âÓ°ÝÃDªºµª®×¤F¡C¹ê»Ú¤W¡A¹q¸£¦L§¹¡u♣¡v«á¡AÁÙ¬O·|§â¡u♠¡v¦L¥X¨Ó¡A¤§«á¬O ASCII ½s¸¹ 7 ªº¹aÁn¡A¦¹®É¤£·|¦L¥X¦r¤¸¡A¦ý¥i¥HÅ¥¨£³â¥zªºÁnÅT¡C±µ¤U¨Ó¬O ASCII ½s¸¹ 8 ªºË°h¦r¤¸¡A¦¹¦r¤¸©M«ö¤UÁä½L¤W¡uË°hÁä¡v®ÄªG¤@¼Ë¡A¦]¦¹¡u♠¡v´N³Q®ø¥h¡C
±µ¤U¨Ó¦L¥X½s¸¹ 9 ªº ASCII ¦r¤¸¡A¦¹¦r¤¸¬O¤ô¥©w¦ì¦r¤¸¡A©Ò¥H¹q¸£·|§â¿Ã¹õ¤WªºªÅ®æ¶ñ¨ì 8 ªº¿¼Æªº¦ì¸m¤W¡A¦A§â´å¼Ð©¹¥k²¾¤@®æ¡C¦ý¬O¦]¬°¶ñº¡ªº¬OªÅ¥Õ¦r¤¸¡A©Ò¥H¬Ý¤£¥X¨Ó³o¨Ç®ÄªG¡C³o®ÉÔ¡A³Ì«á¤@¦æùØ¡A¯à¬Ý¨£¨ìªº³Ì«á¤@Ó¦r¤¸¬O¡u♣¡v¡AªÅ¥Õ¬O¬Ý¤£¨£ªº¡C
±µ¤U¨Ó¬O½s¸¹ A ªº´«¦æ¦r¤¸¡A¦¹®É·|·s¼W¤@¦æ¡A´å¼Ð·|²¾¨ì¤U¤@¦æªº¦P¦ì¸m¡C·s¼W¤@¦æ«á¡A¤W¤@¦æªº³Ì«á¯à¨£¨ìªº¦r¤¸´N¬O¡u♣¡v¡C±µ¤U¨Ó¬O½s¸¹ B »P C ªº¦r¤¸¡A¦b IBM PC ¤W¡A·|¦b¿Ã¹õ¤WÅã¥Ü¡u♂¡v¡B¡u♀¡v¨â¦r¤¸¡A¦Ó¤£¬O±±¨î´å¼Ð¦ì¸m¡C±µ¤U¨Ó¬O½s¸¹ D ªºÂk¦ì¦r¤¸¡A¦¹¦r¤¸·|Åý´å¼Ð²¾¨ì·s¼W¤@¦æªº³Ì¥ªÃä¡C±µ¤U¨Ó¡A¦L¥Xªº¦r¤¸´N·|Âл\·s¼W¤@¦æ¡A¤w¸g¦L¥Xªº¦r¤¸¡C¦³¤F³o»ò¦hì¦]¡AASCII.COM ©Î ASCII2.COM ¦L¥X¨Óªº¦r¤¸¡A´NÅܦ¨¤W±¨º¼Ë¤F
¨Æ¹ê¤W¡A¦b¤£¦Pªº§@·~¨t²ÎùØ¡A´«¦æ¦r¤¸¬O¤£¤@¼Ëªº¡C³oùتº´«¦æ¦r¤¸n¹F¨ì¨âӮĪG¡A¤£¶Èn·s¼W¤@¦æ¡A¦Ó¥BÁÙn§â´å¼Ð²¾¨ì·s¼Wªº¨º¤@¦æ³Ì¥ªÃä¡C
³o¤@³¹¡A¤p¤ì°¸¤¶²Ð¤F¤TÓ x86 «ü¥O¡GINC¡BJMP¡BLOOP¡A¥H¤Î¨âÓÆ[©À¡G°j°é»P´«¦æ¦r¤¸
INC «ü¥O¬O¼W¥[¤@ ( increment by 1 ) ªº·N«ä¡A¨ä»yªk¬O¡G
INC ¹Bºâ¤¸
INC «ü¥O¬O¨Ï±µ¦b«á±ªº¹Bºâ¤¸¼W¥[¤@¡A³oÓ¹Bºâ¤¸¥i¥H¬O¤K¦ì¤¸©Î¤Q¤»¦ì¤¸ªº¼È¦s¾¹¡A¤]¥i¥H¬OÅܼơC
JMP «ü¥O¬OµL±ø¥ó¸õÅD¡A¨ä»yªk¬O¡G
JMP °O¾ÐÅé¦ì§}
·í CPU °õ¦æ¨ì³o¤@¦æ«ü¥O¡A·|§ïÅÜ IP ¼È¦s¾¹¤§È¨ì¡u°O¾ÐÅé¦ì§}¡v¡A¦Ó¤£¬O JMP ªº¤U¤@±ø«ü¥Oªº¦ì§}¡C¦]¦¹µ{¦¡±±¨îÅv·|Âಾ¨ì JMP «á±±µµÛªº°O¾ÐÅé¦ì§}¥h°õ¦æ¡A¦Ó¤£¬O¨Ì¶¶°õ¦æ¡C
LOOP «ü¥Oªº»yªk¬O
LOOP °O¾ÐÅé¦ì§}