²Ä20³¹¡@Àɮס}¤@¡^¤¶²Ð

­ì²z

¦b³o¤@³¹ùØ¡A¤p¤ì°¸·Q¸ò¦U¦ì½Í½Í²Õ¦X»y¨¥·|¨Ï¥Î¨ìªº¡A¦³ÃöÀɮ׳B²zªº DOS ªA°Èµ{¦¡¡A¥H§Q¼¶¼g¤U¤@³¹ªº½d¨Ò¡C©Ò¿×Àɮ׳B²zªº·N«ä¬O«ü«Ø¥ßÀɮסB­×§ïÀɮסB§R°£ÀÉ®×µ¥µ¥ªº¤u§@¡C¦ý¬O¦b¶i¤J¥DÃD¤§«e¡A½Ð°Ñ¾\ªþ¿ý¤»ªº¡uDOS ¤¤ªºÀx¦s¸Ë¸m¡B¥Ø¿ý¡B¸ô®|»PÀɮסv¡A¦]¬°³o¨ÇÆ[©À¬OÀɮ׳B²z©Ò¥²¶·¨ã³Æªºª¾ÃÑ¡A§Y¨Ï¨ì¤F Windows §@·~¨t²Î®É¥N¡A³o¨ÇÆ[©À¤´µM¬O¤£Åܪº¡C

ÀÉ®×¥N½X ( File Handle )

DOS ³B²zÀɮתº¤è¦¡¦³¨âºØ¡A¤@¬O±Ä¥ÎÀÉ®×±±¨î°Ï¶ô ( file control block¡AÁY¼g¬° FCB )¡A¥t¤@ºØ¬OÀÉ®×¥N½X ( file handle )¡C«eªÌ³B²zÀɮתº¤è¦¡¤w¸g¸¨¥î¤F¡A¦Ó«áªÌ¤@ª½¨ì¤µ¤éªº Windows 11 §@·~¨t²ÎÁÙ¦A¨Ï¥Î¡A¦]¦¹¤p¤ì°¸¶È»¡©úÀÉ®×¥N½XªºÀɮ׳B²z¤è¦¡¡C

·í§@·~¨t²Î ( ¨Ò¦p DOS¡BWindows µ¥ ) ¦b¶}±ÒÀɮשΫإßÀɮפ§«á¡A´Nµ¹³o­ÓÀɮפ@­Ó¸¹½X¡A³o­Ó¸¹½X´NºÙ¬°¡uÀÉ®×¥N½X¡v¡A¥¦¨ä¹ê¬O¤@­Ó¥¿¾ã¼Æ¡A¥H«á§@·~¨t²Î´N¥ÎÀÉ®×¥N½X¥N´ÀÀɮצWºÙ¡A¶i¦æŪ¨ú¡B¼g¤J¡B§R°£¡B½Æ»sµ¥¤u§@¡A¦Ó¤£¦Aª½±µ¥ÎÀɦW¤F¡C³oºØ±¡§Î¦³ÂIÃþ¦ü°Ñ¥[¤j¾Ç¤J¾Ç¦Ò¸Õ¡A¸Õ°È©e­û·|µ¹§A¤@­Ó¿W¤@µL¤Gªº­ã¦ÒÃÒ¸¹½X¡A¦Ó«á¥h¸Õ³õÀ³¸Õ¡B¬dº]¡B©ñº]³£¥H³o­Ó¸¹½X¥N´À©m¦W¡C

¶¶±a»¡¤@»¡ handle ªºÂ½Ä¶¡Chandle ¬O«üª«Å骺§â¤â¡A¨Ò¦p¯ùªMªº§â¤â¡C·í§Ú­Ì­n³Ü¯ù®É¡A¥²©w¤â´¤¦í§â¤â¨Ï¥Î¡A¦]¦¹ handle ¤]¦³¾ÞÁa¡B³B²zªº·N«ä¡C·í§Ú­Ì¹ïÀɮ׶i¦æŪ¨ú¡B¼g¤J¡B§R°£¡B½Æ»sµ¥¤u§@¡A¤£¤]¹ïÀɮ׶i¦æ¾ÞÁa¡B³B²z¶Ü¡H¦Ó¨ä¾ÞÁa¡B³B²zªº¹ï¶H¡A¤£´N¬OÀÉ®×¥»¨­¡A¦]¦¹±N handle ½¦¨¡uÀÉ®×¥N½X¡v( ¤j³°Â½¦¨¡u¥y¬`¡v)¡C

¨Ï¥ÎÀÉ®×¥N½X³B²zÀɮסA¥²©w·|©I¥s DOS ªA°Èµ{¦¡À°§Ú­Ì³B²zº¾¸Hªº¨Æ±¡¡A¤Uªí¤¤¡uÀɮצs¨ú¡v¨º¤@Ä檺ªA°Èµ{¦¡³£»PÀÉ®×¥N½X¦³Ãö¡A¤¤¶¡¨º¤@Äæ«h»PÀɮ׺޲z¦³Ãö¡A¥kÄæ»P¥Ø¿ýºÞ²z¦³Ãö¡G

Àɮצs¨úÀɮ׺޲z¥Ø¿ýºÞ²z
AH¡×1AH¡G³]¸m DTA
AH¡×3DH¡G¶}±ÒÀÉ®×
AH¡×3EH¡GÃö³¬ÀÉ®×
AH¡×3FH¡GŪ¨úÀÉ®×
AH¡×40H¡G¼g¤JÀÉ®×
AH¡×42H¡G³]©wÀɮ׫ü¼Ð
AH¡×3CH¡G«Ø¥ß©ÎºIÂ_ÀÉ®×
AH¡×41H¡G§R°£ÀÉ®×
AH¡×43H¡G¨ú±o©Î³]©wÀÉ®×ÄÝ©Ê
AH¡×4EH¡G´M§ä²Ä¤@­Ó²Å¦XªºÀÉ®×
AH¡×4FH¡G´M§ä¤U¤@­Ó²Å¦XªºÀÉ®×
AH¡×56H¡G§ó§ïÀɮצWºÙ
AH¡×57H¡G¨ú±o©Î³]©wÀɮ׮ɶ¡¤é´Á
AH¡×5BH¡G«Ø¥ß·sÀÉ®×
AH¡×39H¡G«Ø¥ß¤l¥Ø¿ý
AH¡×3AH¡G§R°£¤l¥Ø¿ý
AH¡×3BH¡G§ïÅÜ·í«e¥Ø¿ý
AH¡×47H¡G¨ú±o·í«e¥Ø¿ý

ÀɮצWºÙ»P ASCIZ ¦r¦ê

¦]¬° DOS §@·~¨t²Î¤¤¡A¤Þ¶i¤F¥Ø¿ýÆ[©À¨ÓºÞ²zÀɮסA¨Ã¥BÁٯह³\¨Ï¥ÎªÌ«Ø¥ß¦h¼h¥Ø¿ý¡A¦]¦¹¦b´£¨ì¤@­ÓÀɮצWºÙ®É¡A³Ì·Ç½TªºÁ¿ªk¬O¼g¥X±qºÏºÐ¾÷¦WºÙ¡B®Ú¥Ø¿ý¶}©l¨ìÀɮשҦbªº¥Ø¿ý¡BÀɮתº¥DÀɦW¡B°ÆÀɦW¥þ³¡³£¼g¥X¨Ó¡A³o¼Ëªí¥ÜÀɮצWºÙªº¤è¦¡ºÙ¬°¡u§¹¾ãªºÀɦW¡v¡A¦Ó±qºÏºÐ¾÷¦WºÙ¡B®Ú¥Ø¿ý¶}©l¨ìÀɮשҦbªº¥Ø¿ýºÙ¬°¡uµ´¹ï¸ô®|¡v¡C

¨Ò¦p¡A¦b¦w¸Ë MASM 6.11 ®É¡A¨ä¦w¸Ëµ{¦¡·|­n¨D¿é¤J¦w¸Ë¦b­þ­Ó¥Ø¿ý¡A°²³]¬O C: ºÏºÐ¾÷ªº¡u\MASM611¡v¥Ø¿ý¡A¨º»ò¦w¸Ëµ{¦¡·|§â²ÕĶ¾¹ ( MASM 6.11 ªº²ÕĶ¾¹¬O ML.EXE ) ¦w¸Ë¦b¡uC:\MASM611\BIN¡v¥Ø¿ýùØ¡A¨º»ò­nÁ¿¥X²ÕĶ¾¹ªº§¹¾ãÀɦW¡A´N¬O¡uC:\MASM611\BIN\ML.EXE¡v¡A¦Ó¡uC:\MASM611\BIN\¡vºÙ¬°µ´¹ï¸ô®|¡C

¦b DOS §@·~¨t²ÎùØ¡A­n³B²zÀɮ׮ɷíµM¥²¶·«ü©wÀɮצWºÙ¡A³q±`·|©I¥s DOS ªA°Èµ{¦¡ INT 21H À°§U³B²zÀɮסA¨º»ò²£¥Í¤@­Ó°ÝÃD¡AÀɮצWºÙªø«×¤£©T©w¡AINT 21H ¦p¦ó§PÂ_ÀɮצWºÙ¨ì©³¦b­þ¨àµ²§ô©O¡H¿ìªk«Ü²³æ¡A´N¬O¦bÀɮצWºÙ«á­±¥[¤W 0¡A¹³³o¼Ë¥H¹sµ²§Àªº¦r¦êºÙ¬°¡uASCIZ¡v¦r¦ê¡C


»PÀɮ׳B²z¦³Ãö±`¥Îªº DOS ªA°Èµ{¦¡

³]¸m DTA¡GAH¡×1AH/INT 21H

ºÏºÐ¶Ç¿é°Ï ( disk transfer area¡AÁY¼g¬° DTA )¡A¬O¤@¶ô°O¾ÐÅéªÅ¶¡¡A¥HÀÉ®×±±¨î°Ï¶ô¤è¦¡Àɮצs¨ú®É¡A§@¬°ºÏºÐŪ¨ú©Î¼g¤J®É¦s©ñ¤§³B¡C³oºØ¦s¨úÀɮתº¤è¦¡¡A¬O¦b CM/P §@·~¨t²Î¤W¨Ï¥Î¡ADOS ¬°¤F¬Û®e©Ê¡A¤]¥i¥H¨Ï¥Î³oºØ¤è¦¡¡CDTA °£¤F¥Î©óÀÉ®×±±¨î°Ï¶ôªº¦s¨úÀÉ®×¥~¡A¤]¥Î¦b´M§ä²Ä¤@­Ó²Å¦XªºÀɮסC³]©w DTA ªº¤è¦¡¬°¡G

³]¸mºÏºÐ¶Ç¿é°Ï¦ì§}
¿é¤J¡GAH¡×1AH
¡@¡@¡@DS:DX¡×·sªººÏºÐ¶Ç¿é°Ï¦ì§}
°õ¦æ¡GINT 21H
ªð¦^¡GµL

µ{¦¡¶}©l°õ¦æ®É¡ADTA ¦bµ{¦¡«e¸m°Ï ( program segment prefix¡A²ºÙ PSP ) °¾²¾¦ì§} 80H ³B¡AÂǥѦ¹ªA°Èµ{¦¡¥i¥H§ó§ï DTA ¦ì§}¡C

¶}±ÒÀɮסGAH¡×3DH/INT 21H

³o­Ó DOS ªA°Èµ{¦¡¬O¥Î¨Ó¶}±Ò¤w¦s¦bªºÀɮסC­è«Ø¥ßªºÀɮסA©I¥s AH¡×3CH/INT 21H «á¦^¶Ç­È´N¬OÀÉ®×¥N½X¡F¤w¦s¦bªºÀɮסA´N¥²¶·¥Î¶}±Òªº¤è¦¡¨ú±oÀÉ®×¥N½X¡A¨ä¥Îªk¬O¡G

¶}±Ò¤w¦s¦bªºÀÉ®×
¿é¤J¡GAH¡×3DH
¡@¡@¡@AL¡×¦s¨ú»P¦@¥Î¼Ò¦¡
¡@¡@¡@DS:DX¡×ASCIZ ¦r¦ê¦ì§}¡A¦¹¦r¦êªí¥ÜÀɮצWºÙ
°õ¦æ¡GINT 21H
ªð¦^¡GNC¡×¦¨¥\¡AAX¡×ÀÉ®×¥N½X
¡@¡@¡@CY¡×¥¢±Ñ¡AAX¡×¿ù»~½X ( ¥i¯à¬O 01H¡B02H¡B03H¡B04H¡B05H¡B0CH¡B56H )

AL ¥Î¨Ó«ü¥Ü¶}±ÒÀɮ׫á¡A³o­ÓÀɮצp¦ó¦s¨ú¡B¦p¦ó¦@¥Î¤Î¦p¦óÄ~©Ó¡A½Ð°Ñ¦Ò¤Uªí¡G

¦ì¤¸¼Ò¦¡»¡©ú
0¡ã2¦s¨ú¼Ò¦¡000¡@¥u¯àŪ¨ú
001¡@¥u¯à¼g¤J
010¡@¥i¥HŪ¨ú¸ò¼g¤J
3«O¯d¬° 0
4¡ã6¦@¥Î¼Ò¦¡000¡@¬Û®e¼Ò¦¡
001¡@¤£¯àŪ¨ú¤]¤£¯à¼g¤J
010¡@¤£¯à¼g¤J
011¡@¤£¯àŪ¨ú
100¡@¥i¥HŪ¨ú¤]¥i¥H¼g¤J
7Ä~©Ó¼Ò¦¡0¡@¤lµ{¦¡¯àÄ~©Ó
1¡@¥u¯à¦b¥»µ{¦¡¤¤¥Î

Á|­Ó¨Ò¤l¨Ó»¡¡A¦pªG AL¡×0C2h¡A§Y¬°¤G¶i¦ìªº 1100 0010¡A¦]¦¹ 0¡ã2 ¦ì¤¸¬° 010¡Aªí¥Ü³o­Ó¶}±ÒªºÀÉ®×¥i¥HŪ¨ú¸ò¼g¤J¡F4¡ã6 ¦ì¤¸¬° 100¡Aªí¥Ü¥t¤@­Óµ{¦¡¦pªG¤]¦P®É¶}±Ò³o­ÓÀɮ׮ɡA¤]¯àŪ¨ú¸ò¼g¤J¡F²Ä 7 ¦ì¤¸¬° 1¡Aªí¥Ü¥u¯à¦b¥»µ{¦¡¤¤¨Ï¥Î¡AµLªkÄ~©Óµ¹¤lµ{¦¡¡C

¦pªG¦¨¥\¶}±ÒÀɮסA¶i¦ìºX¼Ð³Q²M°£ ( NC )¡AAX ¤º¬°¦^¶Ç­È¡Aªí¥Ü¦¨¥\¶}±ÒªºÀÉ®×¥N½X¡F¦pªG¥¢±Ñ¡A¶i¦ìºX¼Ð³Q³]©w ( CY )¡AAX ¬°¿ù»~½X¡A¥i¯àªº¿ù»~½X¦³ 01H¡B02H¡B03H¡B04H¡B05H¡B0CH¡B56H ¤CºØ¡A¨ä©Ò¥Nªíªº·N¸q°Ñ¾\µù¤@¡C

Ãö³¬ÀɮסGAH¡×3EH/INT 21H

³o­Ó DOS ªA°Èµ{¦¡¥Î¨ÓÃö³¬ÀɮסA¨ä¥Îªk¬O¡G

Ãö³¬ÀÉ®×
¿é¤J¡GAH¡×3EH
¡@¡@¡@BX¡×­nÃö³¬ªºÀɮפ§ÀÉ®×¥N½X
°õ¦æ¡GINT 21H
ªð¦^¡GNC¡×¦¨¥\
¡@¡@¡@CY¡×¥¢±Ñ¡AAX¡×¿ù»~½X ( ¥i¯à¬O 06H¡Aªí¥ÜµL®ÄªºÀÉ®×¥N½X )

¦pªG¦¨¥\Ãö³¬ÀɮסA¶i¦ìºX¼Ð³Q²M°£¡F¦pªG¥¢±Ñ¡A¶i¦ìºX¼Ð³Q³]©w¡A¦^¶Ç­È AX ¬°¿ù»~½X¡A¥i¯à¬O 06H¡Aªí¥ÜµL®ÄªºÀÉ®×¥N½X¡C

¬°¦ó­nÃö³¬ÀɮשO¡H­ì¦]¦³¨â­Ó¡C²Ä¤@­Ó¬O¤@­ÓÀɮצb«Ø¥ß©Î¶}±Ò«á¡A¸g¹LŪ¼g¡AµM«á¦pªG¤£»Ý­n¦A¥Î¨ì¸ÓÀɮ׮ɡA´NÀ³¸Ó­nÃö³¬¡AÅý¼È¦s¦b°O¾ÐÅé½w½Ä°Ïùتº¸ê®Æ¯u¥¿¼g¤JÀɮסA¤~¤£­P³y¦¨¸ê®Æ¬y¥¢¡C

²Ä¤G­Ó¬O¶}±ÒªºÀɮ׶V¦h¡A´N¶V¯Ó¶O°O¾ÐÅéµ¥¹q¸£¸ê·½¡C·í§Ú­Ì©I¥sÃö³¬Àɮתº DOS ªA°Èµ{¦¡®É¡ADOS ´N¦¬¦^³o­ÓÀÉ®×¥N½X¤Î¨ä©Ò¦û¥Îªº°O¾ÐÅé¡AÅý¨ä¥LÀɮרϥΡCDOS ³W©w³Ì¤j¶}±ÒÀɮתº¼Æ¥Ø¬O©ñ¦b CONFIG.SYS ¤¤¡A¥Î

FILES=xx

¨Ó«ü©w¡AFILES ¤£°Ï¤À¤j¤p¼g¡Axx ´N¬O DOS ©Ò¯à¶}±Ò³Ì¤jÀɮ׼ƥءA¡A·íµM xx ¤]¥i¥H­×§ï¦¨§Ú­Ì©Ò»Ý­nªºÀɮ׼ƥءA­«·s±Ò°Ê¨t²Î«á§Y¥i¡C

­È±oª`·Nªº¬O¡ADOS ¦b¤@¶}¾÷®É¡A´N¤w¸g¶}±Ò¤F 5 ­ÓÀÉ®×¥N½Xµ¹¨t²Î¨Ï¥Î¤F¡A©Ò¥H¦pªG§A¦b CONFIG.SYS ¤º«ü©w FILES=20¡A¨Æ¹ê¤W§A¥u¯à¶}±Ò 15 ­ÓÀɮסA¦]¦¹¦pªG­n¨Ï¥Î¦P¨Ï¶}±Ò¦hÀɮתºµ{¦¡¡A¨Ò¦p Windows 3.1¡A³Ì¦n¯à¦b CONFIG.SYS «ü©w¤j¤@ÂIªº¶}±ÒÀɼƥءC³o 5 ­ÓÀɮ׬O¡G

0000H  ¼Ð·Ç¿é¤J³]³Æ ( stdin ) ¡GÁä½L
0001H  ¼Ð·Ç¿é¥X³]³Æ ( stdout )¡G¿Ã¹õ
0002H  ¼Ð·Ç¿ù»~³]³Æ ( stderr )¡G¿Ã¹õ ( §@·~¨t²Îµo¥Í¿ù»~°T®§®É¡A¦¹°T®§¿é¥X¦Ü¿Ã¹õ )
0003H  ¼Ð·Ç»²§U³]³Æ ( stdaux )¡G²Ä¤@­Ó§Ç¦C°ð¡A§Y COM1
0004H  ¼Ð·Ç¦C¦L³]³Æ ( stdprn )¡G¦Lªí¾÷

³o¤­­ÓÀɮ׬ݰ_¨Ó¦ü¥G¤£¬OÀɮסA¦Ó¬O¶gÃä³]³Æ¡A«ç»ò·|³o¼Ë©O¡H­ì¨Ó DOS §â³o¨Ç³]³Æµø¬°ÀɮסA¹ï¥¦­Ì¿é¥X¸ê®Æ®É¡A´N¹³¬O¹ï¡uÀɮסv¼g¤J¡C

¨Ò¦p①©I¥s AH¡×40H/INT 21H ¦Ó BX¡×4¡A¨ä¹ê´N¬O¦b¦Lªí¾÷¤W¦L¥X¤å¦r¡C②§Ú­Ì¤]¥i¥H¥Î¡u>¡v¡B¡u<¡v¨Ó¨Ï­ì¥»¿é¥X¨ì¿Ã¹õ¤Wªº¤å¦rÅܦ¨¿é¥X¦ÜÀɮסC③°²¦p©I¥s AH¡×3EH/INT 21H ®É¡ABX ¬° 0¡A´N·|Ãö³¬Áä½L¡A·|ÅýÁä½LÅܱoµL®Ä¡C¨ä¥L 1¡ã4 ªºÀÉ®×¥N½X¤]¦³Ãþ¦üªº®ÄªG¡A©I¥s«e­nª`·N¡C

Ū¨úÀɮסGAH¡×3FH/INT 21H

³o­Ó¥\¯à¬OŪ¨úÀɮפ¤ªº¸ê®Æ¡A¨Ã¦s©ñ¦b°O¾ÐÅ餺¡A¨ä¥Îªk¦p¤U¡G

Ū¨úÀÉ®×
¿é¤J¡GAH¡×3FH
¡@¡@¡@BX¡×±ýŪ¨úªºÀɮפ§ÀÉ®×¥N½X
¡@¡@¡@CX¡×±ýŪ¨úªºªø«×¡A¥H¦ì¤¸²Õ¬°³æ¦ì
¡@¡@¡@DS:DX¡×½w½Ä°Ï¦ì§}¡A§Y±qÀÉ®×Ū¨ú¸ê®Æ«áªº¦s©ñ¦ì§}
°õ¦æ¡GINT 21H
ªð¦^¡GNC¡×¦¨¥\¡AAX¡×¹ê»ÚŪ¨úªºªø«×¡A¥H¦ì¤¸²Õ¬°³æ¦ì
¡@¡@¡@CY¡×¥¢±Ñ¡AAX¡×¿ù»~½X ( ¥i¯à¬O 05H¡B06H¡A½Ð°Ñ¾\µù¤@ )

·í¶}±ÒÀɮשΫإßÀɮ׮ɡADOS ¤£¶È·|µ¹¸ÓÀɮפ@­ÓÀÉ®×¥N½X¡AÁÙ·|³]¸m¤@­Ó 32 ¦ì¤¸ªøªºÀɮ׫ü¼Ð¡C·íŪ¨úÀɮ׮ɡA´N¬O¥ÑÀɮ׫ü¼Ð³B¶}©lŪ¨ú¸ê®Æ¡C¦pªGŪ¨ú¦¨¥\¡A¨º»òÀɮ׫ü¼Ð´N·|¥[¤W¤wŪ¨úªºªø«×¡A¦Ó«ü¨ì¤U¦¸¸ÓŪ¨úªº¦ì¸m¡C

¦pªGŪ¨ú¦¨¥\¡ADOS ·|²M°£¶i¦ìºX¼Ð¡A¦^¶Ç­È AX ¬°¹ê»ÚŪ¨úªºªø«×¡C·íÀɮ׫ü¼Ð¤w¦bÀÉ®×µ²§À©Î±µªñÀÉ®×¥½ºÝ¡A¦Ó CX ¤§­È¶W¹LÀɮ׫ü¼Ð»PÀÉ®×µ²§Àªº¶ZÂ÷¡A¹ê»ÚŪ¨úªºªø«×´N·|¤p©ó±ýŪ¨úªºªø«×¡A³o®É­Ô¶i¦ìºX¼Ð¤´·|³Q²M°£¡A§Y¨Ï¹ê»ÚŪ¨úªºªø«×¬°¹s¡C

¼g¤JÀɮסGAH¡×40H/INT 21H

³o­Ó¥\¯à¬O§â¦b°O¾ÐÅ餺¸ê®Æ¼g¤JÀÉ®×ùØ¡A¨ä¥Îªk¦p¤U¡G

¼g¤JÀÉ®×
¿é¤J¡GAH¡×40H
¡@¡@¡@BX¡×±ý¼g¤JªºÀɮפ§ÀÉ®×¥N½X
¡@¡@¡@CX¡×±ý¼g¤Jªºªø«×¡A¥H¦ì¤¸²Õ¬°³æ¦ì
¡@¡@¡@DS:DX¡×½w½Ä°Ï¦ì§}¡A§Y±ý¼g¤Jªº¸ê®Æ¦s©ñ¦ì§}
°õ¦æ¡GINT 21H
ªð¦^¡GNC¡×¦¨¥\¡AAX¡×¹ê»Ú¼g¤Jªºªø«×¡A¥H¦ì¤¸²Õ¬°³æ¦ì
¡@¡@¡@CY¡×¥¢±Ñ¡AAX¡×¿ù»~½X ( ¥i¯à¬O 05H¡B06H¡A½Ð°Ñ¾\µù¤@ )

¦pªG¼g¤J¦¨¥\¡ADOS ·|²M°£¶i¦ìºX¼Ð¡A¦^¶Ç­È AX ¬°¹ê»Ú¼g¤Jªºªø«×¡AÀɮ׫ü¼Ð¤]·|¥[¤W¤w¼g¤Jªºªø«×¡C

³]©wÀɮ׫ü¼Ð¡GAH¡×42H/INT 21H

·í¶}±ÒÀɮשΫإ߷sÀɮɡADOS ¤£¶È·|µ¹¸ÓÀɮפ@­ÓÀÉ®×¥N½X¡AÁÙ·|³]¸m¤@­ÓÀɮ׫ü¼Ð¡A³o®É­ÔÀɮ׫ü¼Ð·|«ü¦VÀÉ®×°_©l¦ì¸m¡C·íŪ¨úÀɮפº®e©Î§â¸ê®Æ¼g¤JÀɮ׮ɡA³£¬O¥ÑÀɮ׫ü¼Ð³B¶}©lŪ¨ú©Î¼g¤J¡CAH¡×42H/INT 21H ¬O¥Î¨Ó³]©w¤w¶}±ÒªºÀɮפ§Àɮ׫ü¼Ð¦ì¸m ( file pointer )¡A¨ä¥Îªk¦p¤U¡G

³]©wÀɮ׫ü¼Ð¦ì¸m
¿é¤J¡GAH¡×42H
¡@¡@¡@AL¡×°ò·ÇÂI ( 0¡G¥HÀÉ®×°_ÀY¬°°ò·ÇÂI¡F1¡G¥H²{¦bªºÀɮ׫ü¼Ð¬°°ò·ÇÂI¡F2¡G¥HÀÉ®×µ²§À¬°°ò·ÇÂI )
¡@¡@¡@BX¡×ÀÉ®×¥N½X
¡@¡@¡@CX:DX¡×¥H°ò·ÇÂI¥Xµo¡A·sªºÀɮ׫ü¼Ð²¾°Ê¦h¤Ö­Ó¦ì¤¸²Õ ( ¬° 32 ¦ì¤¸¦³¸¹¼Æ )
°õ¦æ¡GINT 21H
ªð¦^¡GNC¡×¦¨¥\¡ADX:AX¡×·sªºÀɮ׫ü¼Ð¶ZÂ÷ÀÉ®×°_ÀY¦h»·¡A¥H¦ì¤¸²Õ¬°³æ¦ì
¡@¡@¡@CY¡×¥¢±Ñ¡AAX¡×¿ù»~½X ( ¥i¯à¬O 01H¡B06H¡A½Ð°Ñ¾\µù¤@ )

CX:DX ¥i¥H¬O¥¿¼Æ©Î­t¼Æ¡A«eªÌªí¥Ü§âÀɮ׫ü¼Ð©¹ÀɮקÀ¤è¦V²¾°Ê¡A«áªÌ«h©¹ÀÉ®×ÀY¤è¦V²¾°Ê¡C¦pªG§âÀɮ׫ü¼Ð©¹ÀɮקÀ¤è¦V²¾°Ê¥B¶W¹LÀɮקÀ¡A¨º»ò DOS ³Ì¦h¤]¥u¯à±N¨ä²¾¨ìÀɮקÀ¤W¡A¦P®É³]©w DX:AX ¬°Àɮפj¤p¥B²M°£¶i¦ìºX¼Ð¡A¨Ã¤£·|²£¥Í¿ù»~¡C¦pªG§âÀɮ׫ü¼Ð³]¦bÀÉ®×ÀY¤§¥~¡A¨º»ò DOS ¯uªº·|²¾¨ì¸Ó³B¡A¦P¼Ë DX:AX ¬°­t­È¥B«ü¥X¸Ó³B¶ZÀÉ®×ÀY¦h»·¡A¤]²M°£¶i¦ìºX¼Ð¤£²£¥Í¿ù»~¡A¦ý³oÀ³¸Ó¬O¿ù»~¡A¥²¶·¤p¤ß¡C

©³¤Uªº¨Ò¤l¡A¬O§âÀɮ׫ü¼Ð±q²{¦b¦ì¸m©¹ÀɮקÀ¤è¦V²¾°Ê 80H ­Ó¦ì¤¸²Õ¡G

        mov     bx,file_handle  ;BX¡×ÀÉ®×¥N½X
        mov     ax,4201h        ;AH¡×42H¡FAL¡×01H¡A¥H²{¦bÀɮ׫ü¼Ðªº¦ì¸m¶}©l
        xor     cx,cx           ;©¹Àɮש¹¤è¦V²¾°Ê 80H ­Ó¦ì¤¸²Õ
        mov     dx,80h
        int     21h

©³¤Uªº¨Ò¤l¡A«h¬O¤£½×Àɮ׫ü¼Ð¦b­þ¨à¡A³£·|¨ÏÀɮ׫ü¼Ð±qÀɮקÀºÝ©¹ÀÉ®×ÀY¤è¦V²¾°Ê 100H ­Ó¦ì¤¸²Õ ( ¦¹³Bªº BX ©Ò¥NªíªºÀɮסA¨ä¤j¤p­n¶W¹L 100H ­Ó¦ì¤¸²Õ )¡G

        mov     ax,4202h        ;AH¡×42H¡FAL¡×02H¡A¥HÀÉ®×µ²§À¬°°ò·ÇÂI
        mov     bx,file_handle  ;BX¡×ÀÉ®×¥N½X
        mov     cx,-1           ;CX:DX¡×¡Ð100H¡Aªí¥Ü³]©wÀɮ׫ü¼Ð¦b¶ZÂ÷ÀɮקÀ100H­Ó¦ì¤¸²Õ
        mov     dx,-100h
        int     21h

AH¡×42H/INT 21H °£¤F³]©wÀɮ׫ü¼Ð¥~¡AÁÙ¥i¥HÀò¨úÀɮפj¤p¡C¨Æ¹ê¤W¡A¦b DOS ªA°Èµ{¦¡¤¤¡A¨S¦³±Mªùªº¨ç¦¡Àò¨úÀɮפj¤p¡A¦]¦¹¥u¯à¥ÎÅܳqªº¤è¦¡¡C·í¶}±ÒÀɮשηs«Ø¥ßÀɮ׮ɡAÀɮ׫ü¼Ð¦ì©óÀÉ®×°_ÀY³B¡A¥i¥H§â AL ³]¬° 2¡A¥HÀÉ®×µ²§À¬°°ò·ÇÂI¡ACX¡BDX §¡³]¬° 0¡A¦A©I¥s AH¡×42H/INT 21H¡A³o¼Ëªº¸Ü´N·|§âÀɮ׫ü¼Ð²¾¨ìÀÉ®×µ²§À¡Cªð¦^®É¡ADX:AX ¬°·sªºÀɮ׫ü¼Ð¶ZÂ÷ÀÉ®×°_ÀY¦h¤Ö­Ó¦ì¤¸²Õ¡A¤]´N¬OÀɮפj¤p¡C

«Ø¥ß©ÎºIÂ_ÀɮסGAH¡×3CH/INT 21H

¦¹ DOS ªA°Èµ{¦¡ªº¥Îªk¬O¡G

«Ø¥ß©ÎºIÂ_ÀÉ®×
¿é¤J¡GAH¡×3CH
¡@¡@¡@DS:DX¡×ASCIZ ¦r¦ê¦ì§}¡A¦¹¦r¦êªí¥Ü±ý«Ø¥ßªºÀɮצWºÙ
¡@¡@¡@CX¡×ÀÉ®×ÄÝ©Ê
°õ¦æ¡GINT 21H
ªð¦^¡GNC¡×¦¨¥\¡AAX¡×ÀÉ®×¥N½X
¡@¡@¡@CY¡×¥¢±Ñ¡AAX¡×¿ù»~½X ( ¥i¯à¬O 03H¡B04H¡B05H )

ÀÉ®×Äݩʦ³¥|ºØ¡G°ßŪ ( read only )¡BÁôÂà ( hidden )¡B¨t²Î ( system )¡B«O¦s ( archive )¡A¤À§O¥H¥|­Ó¦ì¤¸ªí¥Ü¡A¦ý¦¹³BÁÙ¥[¤W¥Ø¿ý¡BºÏºÐ¾÷ªº¨÷¦W¡A½Ð°Ñ¦Òªí¡GÀÉ®×ÄÝ©Ê¡C

¦pªG DS:DX ©Ò«ü¦ì§}ªºÀɮפw¦s¦b¡A¨º»ò¸ÓÀɮפº®e·|³QºIÂ_¨Ïªø«×Åܬ°¹s¡C¦]¦¹«Ø¥ßÀɮ׳̦n¨Ï¥Î AH¡×5BH/INT 21H¡C

¦pªG¦¨¥\«Ø¥ßÀɮסAINT 21H ·|²M°£¶i¦ìºX¼Ð¡A¦P®É±N·s«Ø¥ßªºÀɮפ§ÀÉ®×¥N½X·í¦¨¦^¶Ç­È¡A¦s¤J AX ªð¦^¡F¦pªG¥¢±Ñ¡AINT 21H ·|³]©w¶i¦ìºX¼Ð¡A¦P®É AX ¬°¿ù»~½X¡C¥i¯àªº¿ù»~½X¦³ 03H¡B04H¡B05H ¤TºØ¡A¸Ô²Ó»¡©ú½Ð°Ñ¾\µù¤@¡C

§R°£ÀɮסGAH¡×41H/INT 21H

³o­ÓªA°Èµ{¦¡¥Î¨Ó§R°£«ü©wªºÀɮסA¥Îªk¦p¤U¡G

§R°£ÀÉ®×
¿é¤J¡GAH¡×41H
¡@¡@¡@DS:DX¡×ASCIZ ¦r¦ê¦ì§}¡A¦¹¦r¦êªí¥Ü±ý§R°£ªºÀɮצWºÙ
°õ¦æ¡GINT 21H
ªð¦^¡GNC¡×¦¨¥\
¡@¡@¡@CY¡×¥¢±Ñ¡AAX¡×¿ù»~½X ( ¥i¯à¬O 02H¡B03H¡B05H¡A½Ð°Ñ¾\µù¤@ )

³o­ÓªA°Èµ{¦¡¤£»Ý­nÂǵÛÀÉ®×¥N½X§R°£ÀɮסA¨Æ¹ê¤W¡A¦pªG¬O¤w¶}±ÒªºÀÉ®×®Ú¥»µLªk§R°£¡C¦]¦¹¥H DS:DX «ü©w­n§R°£ªºÀɮצWºÙ¨Ó§R°£ÀɮסC

¨ú±o©Î³]©wÀÉ®×ÄÝ©Ê¡GAH¡×43H/INT 21H

¦¹ªA°Èµ{¦¡ªº¥Î³~¬O¨ú±o©Î³]©wÀɮתºÄÝ©Ê¡A¥Îªk¦p¤U¡G

¨ú±o©Î³]©wÀÉ®×ÄÝ©Ê
¿é¤J¡GAH¡×43H
¡@¡@¡@DS:DX¡×ASCIZ ¦r¦ê¦ì§}¡A¦¹¦r¦êªí¥Ü±ý¨ú±o©Î³]©wÄݩʪºÀɮצWºÙ
¡@¡@¡@AL¡×0¡G¨ú±oÀÉ®×ÄÝ©Ê
¡@¡@¡@¡@¡@1¡G³]©wÀÉ®×ÄÝ©Ê¡A¦¹®É­n³]©w CX ¬°ÀÉ®×ÄÝ©Ê
°õ¦æ¡GINT 21H
ªð¦^¡GNC¡×¦¨¥\¡A­Y¨ú±oÀÉ®×ÄÝ©Ê¡A¦¹®É CX ¬°¦^¶ÇªºÀÉ®×ÄÝ©Ê
¡@¡@¡@¡@¡@¡@¡@¡@­Y³]©wÀÉ®×ÄÝ©Ê¡A¦¹®É CX µL·N¸q
¡@¡@¡@CY¡×¥¢±Ñ¡AAX¡×¿ù»~½X ( ¥i¯à¬O 01H¡B02H¡B03H¡B05H¡A½Ð°Ñ¾\µù¤@ )

¤£½×¬O¨ú±o©Î³]©w¡ACX ³£¬OÀÉ®×Äݩʦs©ñªº¦a¤è¡A¦U¦ì¤¸©Ò¥Nªíªº·N¸q°Ñ¨£¤Uªí¡C³o±iªíÁöµM¶È»¡©ú²Ä 0¡ã7 ¦ì¤¸ªº·N¸q¡A¨Æ¹ê¤W¡A²Ä 8¡ã15 ¦ì¤¸³£¨S¦³¨Ï¥Î¡C

ªí¡GÀÉ®×ÄÝ©Ê
¦ì¤¸·N¸q
01¡G¨ã¦³°ßŪÄÝ©Ê¡F0¡G¤£¨ã°ßŪÄÝ©Ê
11¡G¨ã¦³ÁôÂÃÄÝ©Ê¡F0¡G¤£¨ãÁôÂÃÄÝ©Ê
21¡G¨ã¦³¨t²ÎÄÝ©Ê¡F0¡G¤£¨ã¨t²ÎÄÝ©Ê
31¡G¨÷¦W¡F0¡G«D¨÷¦W
41¡G¥Ø¿ý¡F0¡G«D¥Ø¿ý
51¡G¨ã¦³«O¦sÄÝ©Ê¡F0¡G¤£¨ã«O¦sÄÝ©Ê
6«O¯d¡A¥²¶·¬° 0
71¡G¦b Novell NetWare ¤¤¥i¤À¨É¦¹ÀɮסF0¡G¤£¯à¤À¨É

°ßŪ ( read only )¡BÁôÂà ( hidden )¡B¨t²Î ( system )¡B«O¦s ( archive ) ¥|ºØÄݩʪº·N¸q¡A¥i°Ñ¦Òªþ¿ý¤»ªº ATTRIB «ü¥O¡C¨÷¦W¥u¯à¦s©ñ¦b®Ú¥Ø¿ý¡A¦Ó¥B¤@­ÓºÏºÐ¾÷¥u¯à¦³¤@­Ó¨÷¦W¡A¦b DOS «ü¥O DIR ®É¯àÅã¥Ü¥X¨Ó¡A¥i¥H§â¨÷¦W·Q¦¨¬OºÏºÐ¾÷ªº§O¦W¡A¦p¤U¹Ï¡G

¦b DOS 6.20 ùØ¡A¦pªG AL ¤£¬° 0 ©Î 1¡A´N·|µo¥Í¿ù»~¡Aªð¦^®É¡ADOS ·|³]©w¶i¦ìºX¼Ð¡A¥B¦^¶Ç­È AX ªº¿ù»~½X¬° 1¡Aªí¥Ü¤£¦Xªkªº¥\¯à¡C

´M§ä²Ä¤@­Ó²Å¦XªºÀɮסGAH¡×4EH/INT 21H

³o­ÓªA°Èµ{¦¡¡A³q±`·|·f°t AH¡×4FH/INT 21H ¨Ï¥Î¡A¥i¥H¦b¤@­Ó¦³¦¨¤d¤W¦Ê­ÓÀɮתº¥Ø¿ýùØ·j´M¯S©wªºÀɮסA¤@¦¸³B²z§¹²¦¡F¤]¥i¥H·j¯S©wªºÀɮסA¥HÁY¤p½d³ò¡CAH¡×4EH/INT 21H ªº¥Îªk¦p¤U¡G

´M§ä²Ä¤@­Ó²Å¦XªºÀÉ®×
¿é¤J¡GAH¡×4EH
¡@¡@¡@CX¡×ÀÉ®×ÄÝ©Ê
¡@¡@¡@DS:DX¡×ASCIZ ®æ¦¡ªºÀɮצWºÙ¦ì§} ( ¥i¥H¥]§t¸ô®|»P¸U¥Î¦r¤¸ )
°õ¦æ¡GINT 21H
ªð¦^¡GNC¡×¦¨¥\¡AAH¡×4EH/INT 21H ·|§â·j´Mµ²ªG¶ñ¤J DTA ( disk transfer area ) ¤¤¡C
¡@¡@¡@CY¡×¥¢±Ñ¡AAX¡×¿ù»~½X ( ¥i¯à¬O 02H¡B03H¡B12H¡A½Ð°Ñ¾\µù¤@ )

¦b¤@­Ó¥Ø¿ý¤¤¡A·|¦³¦U¦¡¦U¼ËªºÀɮסA¹³¬O JPG ¹Ï¤ùÀÉ¡BMP3 Án­µÀÉ¡BTXT ¯Â¤å¦rÀɵ¥µ¥¡A¥i¥H©I¥s AH¡×4EH/INT 21H ·f°t AH¡×4FH/INT 21H ¦A¥[¤W°j°é¡A³B²z§¹©Ò¦³²Å¦X DS:DX ©Ò«ü©wªºÀɮסA½Ð°Ñ¦Ò¤U¤@³¹ªº¨Ò¤l¡C

³o¸Ì¤p¤ì°¸¥u¥ý»¡©ú¦p¦ó©I¥s AH¡×4EH/INT 21H¡C©I¥s®É¡ADS:DX ¥²¶·¬O­n³B²zªºÀɮצWºÙ¦r¦ê¤§¦ì§}¡A¥B¦r¦ê¶·¥H 0 µ²§À¡A¦pªG¦¹¦r¦ê¥]§t¤F¡u*¡v©Î¡u?¡v¡AAH¡×4EH/INT 21H ¯à§ä¨ì²Å¦X DS:DX ©Ò«ü©wªº²Ä¤@­ÓÀɮסA¦b«áÄò©I¥s AH¡×4FH/INT 21H ¯à§ä¨ì¨ä¥L²Å¦XªºÀɮסC¦¹³B©Ò¿×ªº¡u²Ä¤@­Ó¡v¬O¨Ì¾Ú¥Ø¿ýºÏ°Ï¤ºÀÉ®×´y­z°Ï¶ô ( file description block¡AÁY¼g¬° FDB ) ªº¶¶§Ç¡C

CX ©Ò«ü©wªºÀÉ®×ÄÝ©Ê¡AÁÙ¯à§ä¨ì¨ã¦³ÁôÂéΨt²ÎÄݩʪºÀɮסA©Î¬O¨ã¦³¨÷¦W©Î¥Ø¿ýÄݩʪº¦WºÙ¡C¨Æ¹ê¤W¡ADOS ¨Ï¥Î¤»ºØÄÝ©Ê¡A¤À§O¬O¨÷¦W¡B¥Ø¿ý¡B«O¦s¡B°ßŪ¡BÁôÂäΨt²Î¡C¨÷¦W¥u¥X²{¦b®Ú¥Ø¿ý¸Ì¡A¦Ó¥B¥u¦³¤@­Ó©ÎªÌ¨S¦³³]¸m¡A¥¦¦b¨Ï¥ÎªÌ¿é¤J¡udir¡v«ü¥O®É·|¥X²{¡A¥i¥H§â¥¦¬Ý¦¨ºÏºÐªº§O¦W¡A¦p¤U¹Ï¡G¨ã¦³¥Ø¿ýÄݩʪº¦WºÙ¡Aªí¥Ü¦¹¬°¥Ø¿ý¨Ã«DÀɮסA¦b¡udir¡v«ü¥O¤U¡A·|¥H¤@¹ï¤¤¬A¸¹¬A¦í¡A¦p¤W¹Ï¡A¥i¥H¥Î¡ucd¡v«ü¥O ( ©Î chdir ) ¤Á´«¶i¥h¡A¤Á´«¶i¥h«á¡ADOS ´£¥Ü²Å¸¹¤]¸òµÛ§ïÅÜ¡A³o­Ó¥Ø¿ý¥iµø¬°¤W¼h¥Ø¿ýªº¤l¥Ø¿ý¡A¨ä¤º¤S¯à¦s©ñ³\¦hÀɮסC¨÷¦W¡B¥Ø¿ý¬O¤ñ¸û¯S§OªºÄÝ©Ê¡A¦b©I¥s AH¡×4EH/INT 21H ®É¡ACX ¥²¶·«ü©w¨÷¦WÄÝ©Ê¡A¤~¯à§ä¨ì¨÷¦W¡F¦P²z¡ACX ¤]­n«ü©w¥Ø¿ýÄÝ©Ê¡A¤]¤~¯à´M§ä¨ì¡C«O¦s¡B°ßŪ¡BÁôÂäΨt²Î¬O°w¹ïÀɮתº¡A¤£¹L¥Ø¿ý¤]¥i¥H¨ã¦³³o¥|ºØÄÝ©Ê¡A³o¥|ºØÄݩʶi¤@¨Bªº»¡©ú¥i°Ñ¦Òªþ¿ý¤»ªº ATTRIB «ü¥O¡C

¦³Ãö CX ¤¤¦U¦ì¤¸±aªíªº·N¸q¬O

bit 0¡×°ßŪ
bit 1¡×ÁôÂÃ
bit 2¡×¨t²Î
bit 3¡×¨÷¦W
bit 4¡×¥Ø¿ý
bit 5¡×«O¦s

¦Ó AH¡×4FH/INT 21H ¤¤ CX ªº³W«h«Ü½ÆÂø¡A¤p¤ì°¸¾ã²z¦p¤U¡G

  1. AH¡×4EH/INT 21H ·|©¿²¤°ßŪ»P«O¦sÄÝ©Ê¡C¤]´N¬O»¡§Y¨Ï CX¡×0¡A¤]¯à§ä±o¨ì¨ã¦³°ßŪ©Î«O¦sÄݩʪºÀɮסC
  2. ·í CX¡×2¡A¶È¶È«ü©wÁôÂÃÄÝ©Ê¡AAH¡×4EH/INT 21H ·|§ä±o¨ì¨ã¦³ÁôÂéΰßŪ©Î«O¦sÄݩʪºÀɮסF¦ý§ä¤£¨ì¦P®É¨ã¦³ÁôÂäΨt²ÎÄݩʪºÀɮסC
  3. ·í CX¡×4¡A¶È¶È«ü©w¨t²ÎÄÝ©Ê¡AAH¡×4EH/INT 21H ·|§ä±o¨ì¨ã¦³¨t²Î©Î°ßŪ©Î«O¦sÄݩʪºÀɮסF¦ý§ä¤£¨ì¦P®É¨ã¦³ÁôÂäΨt²ÎÄݩʪºÀɮסC
  4. ·í CX¡×6¡A¦P®É«ü©wÁôÂûP¨t²ÎÄÝ©Ê¡AAH¡×4EH/INT 21H ·|§ä±o¨ì°£¤FÄݩʬ°¥Ø¿ý©Î¨÷¦W¤§¥~ªº©Ò¦³ÀɮסC
  5. ·í CX¡×8¡A¶È¶È«ü©w¨÷¦W¡AAH¡×4EH/INT 21H ¥u¯à§äªº¨ì¨÷¦W¡A¨ã¦³¨ä¥LÄݩʪº³£¤£²Å¦X¡F¦pªG CX «ü©w¤F¨÷¦W¤Î¨ä¥LÄÝ©Ê¡A¨º»ò¨ã¦³¨÷¦W¡B¨ä¥LÄÝ©Ê¥H¤ÎÁôÂûP«O¦sÄÝ©Ê¡A³£¯à§ä±o¨ì¡C
  6. ·í CX¡×10H¡A¶È¶È«ü©w¥Ø¿ý¡AAH¡×4EH/INT 21H ·|§ä±o¨ì¨ã¦³¥Ø¿ý©Î°ßŪ©Î«O¦sÄݩʪº¥Ø¿ý©ÎÀɮסC
  7. ·í CX¡×1EH¡A¥B DS:DX ©Ò«üªº¦r¦ê¬°¡u"*.*",0¡v®É¡A¯à§ä±o¨ì©Ò¦³ÀɮסB¥Ø¿ý»P¨÷¦W¡C

¨Ò¦p©³¤Uªºµ{¦¡¤ù¬q¡A¯à§ä¨ì¨ã¦³ÁôÂáB°ßŪ©Î«O¦s¥B°ÆÀɦW¬°¡uexe¡vªºÀɮשΥؿý¡A§Y¨Ï¦³­ÓÁôÂ꺡uSEX.EXE¡v¤l¥Ø¿ý¤]¯à§ä±o¨ì¡G

file    DB      "*.exe",0
        .
        .
        .
        mov     dx,OFFSET file  ;´M§äÀɦW¬°¡u*.exe¡vªºÀɮסAªí¥Ü°ÆÀɦW¬°¡uexe¡vªº¥þ³¡ÀÉ®×
        mov     cx,12h          ;12H¡×1 0001B¡A²Ä1¦ì¤¸¡×1ªí¥ÜÁôÂáA²Ä4¦ì¤¸¡×1ªí¥Ü¥Ø¿ý
        mov     ah,4eh
        int     21h

AH¡×4EH/INT 21H ·|§ä¨ì²Ä¤@­Ó²Å¦XªºÀɮסA¨Ã§â¸ÓÀɮתºÀɦW¡BÄÝ©Ê¡B¤j¤p¡B³Ì«á­×§ï¤é´Á»P®É¶¡¦s©ñ¦bºÏºÐ¶Ç¿é°Ï ( disk transfer area¡AÁY¼g¬° DTA ) ¤º¡CDTA ¬O¤@¶ô°O¾ÐÅé¡AÅU¦W«ä¸q¡A¬O¥Î¨Ó¶Ç»¼ºÏºÐ¸ê®Æ¥Îªº¡C·íµ{¦¡­è¶}©l°õ¦æ®É¡ADTA ªº¹w³]¦ì§}¬O¦bµ{¦¡«e¸m°Ï ( program segment prefix¡A²ºÙ PSP ) °¾²¾¦ì§} 80H ³B¡A©Ò¥H DTA ªº¦ì§}¥i¥H¼g¦¨ PSP:0080¡A³o®É­Ô DS¡BES ¼È¦s¾¹¤]³£«ü¦V PSP¡C¦pªG AH¡×4EH/INT 21H ©I¥s¦¨¥\¡ADOS ·|²M°£¶i¦ìºX¼Ð¡A¦P®É¦b DTA ¶ñ¤J¥H¤Uªº¸ê®Æ¡G

°¾²¾
¦ì§}
ªø«×
¦ì¤¸²Õ
»¡¡@©ú
0¡ã2021«O¯dµ¹ DOS ¨Ï¥Î¡C¦ý®Ú¾Ú¥¼¤½¶}ªº¤å¥ó¡A¨ä¤º®e¦p¤U¡G
°¾²¾
¦ì§}
ªø«×
¦ì¤¸²Õ
»¡¡@©ú
01ÀÉ®×ÄÝ©Ê
11´M§äªººÏºÐ¾÷¦WºÙ
211´M§äÀɦW
132¥Ø¿ý¶i¤JÂI
152¥Ø«e¥Ø¿ýªººÏÂO ( cluster )
172«O¯d
192¥Ø«e¥Ø¿ýªººÏÂO ( cluster )
·íµM¡A¥¼¤½¶}ªº¤å¥ó¤Wªº¸ê®Æ®É®ÉÅÜ°Ê¡A©Ò¥H¤W­z¸ê®Æ¤£¤@©w¥¿½T¡A¸òª©¥»¦³«Ü¤jªºÃö«Y¡C
211²Å¦XÀɮתºÄÝ©Ê¡A¨£¡uªí¡GÀÉ®×ÄÝ©Ê¡v¡C
22¡ã232Àɮ׳̫á­×§ï®É¶¡¡C( §ó¸Ô²Óªº»¡©ú½Ð«ö³o¸Ì )
¡@¡@¡@Bit 0¡ã4¡G¬í¼Æ°£¥H 2
¡@¡@¡@Bit 5¡ã10¡G¤ÀÄÁ
¡@¡@¡@Bit 11¡ã15¡G¤p®É ( 0¡ã23 )
24¡ã252Àɮ׳̫á­×§ï¤é´Á¡C( §ó¸Ô²Óªº»¡©ú½Ð«ö³o¸Ì )
¡@¡@¡@Bit 0¡ã4¡G¤é
¡@¡@¡@Bit 5¡ã8¡G¤ë
¡@¡@¡@Bit 9¡ã15¡G¦è¤¸¦~¡Ð1980
26¡ã294Àɮפj¤p¡G¦¹¬°Âù¦r²Õ¡A³Ì¦h¥i¹F 4GB¡C
30¡ã4213ÀɮצWºÙ¡A¥H ASCIZ ªí¥Ü¡u8.3¡vÀɦW®æ¦¡¡C

DTA ©Ò¦b¦ì§}­è¦n»P¨Ï¥ÎªÌ¦b©RÅ¥´£¥Ü¦r¤¸¤U©Ò¿é¤Jªº«ü¥O¤Î°Ñ¼Æ©Ò¦b¦ì§}­«Å|¡A¦pªGµ{¦¡°õ¦æ´Á¶¡¡A¤£¨Ï¥Î DTA ©Î¿é¤Jªº«ü¥O¤Î°Ñ¼Æªº¸Ü¡A¨º´N¨S¤°»ò°ÝÃD¡F¦ý¦pªG¨âªÌ³£·|¥Î¨ì¡A´N·|µo¥Í½Ä¬ð¡C³o®É¥i¥H©I¥s AH¡×1AH/INT 21H §â DTA ³]¸m¨ì§Oªº¦ì§}¡C

´M§ä¤U¤@­Ó²Å¦XªºÀɮסGAH¡×4FH/INT 21H

³o­ÓªA°Èµ{¦¡¡A³q±`·|·f°t AH¡×4EH/INT 21H ¨Ï¥Î¡C³q±`¬O¦b°õ¦æ§¹ AH¡×4EH/INT 21H ¤§«á¡A¦A¸òµÛ©I¥s AH¡×4FH/INT 21H §ä¨ì²Ä¤G­Ó¤Î§ó¦h²Å¦XªºÀɮסA¥Îªk¬O¡G

´M§ä¤U¤@­Ó²Å¦XªºÀÉ®×
¿é¤J¡GAH¡×4FH
¡@¡@¡@DTA ( disk transfer area ) ¤¤¤w¸g¦³©I¥s AH¡×4EH/INT 21H ©Î AH¡×4FH/INT 21H «áªº¸ê®Æ
°õ¦æ¡GINT 21H
ªð¦^¡GNC¡×¦¨¥\¡ADTA ·|§ó·s
¡@¡@¡@CY¡×¥¢±Ñ¡AAX¡×¿ù»~½X ( ¥i¯à¬O 12H¡A½Ð°Ñ¾\µù¤@ )

°²¦p­n¨ú±o©Ò¦³²Å¦XªºÀɮסA¨º»ò¥²¶·¨Ï¥Î°j°é¡A½Ð°Ñ¦Ò¤U¤@³¹ªº¨Ò¤l¡C

§ó§ïÀɮצWºÙ¡GAH¡×56H/INT 21H

§ó§ïÀɮצWºÙ¡A¥i¥H¨Ï¥Î AH¡×56H/INT 21H¡A¥Îªk¬O

§ó§ïÀɮצWºÙ
¿é¤J¡GAH¡×56H
¡@¡@¡@DS:DX¡×ASCIZ ¦r¦ê¦ì§}¡A¦¹¦r¦êªí¥Ü­ì¨ÓªºÀɮצWºÙ ( §Y³Q­×§ïÀɦW )¡A¥B¤£¯à¥]§t¸U¥Î¦r¤¸
¡@¡@¡@ES:DI¡×ASCIZ ¦r¦ê¦ì§}¡A¦¹¦r¦êªí¥Ü·sªºÀɮצWºÙ¡A¥B¤£¯à¥]§t¸U¥Î¦r¤¸
°õ¦æ¡GINT 21H
ªð¦^¡GNC¡×¦¨¥\ÅܧóÀɦW
¡@¡@¡@CY¡×¥¢±Ñ¡AAX¡×¿ù»~½X ( ¥i¯à¬O 02H¡B03H¡B05H¡B11H¡A½Ð°Ñ¾\µù¤@ )

§ó§ïÀɦW³q±`µo¥Í¦b¦P¤@ºÏºÐªº¦P¤@¥Ø¿ý¤º¡A¦ý AH¡×56H/INT 21H ªº¿é¤J°Ñ¼Æ¡A¤]¥i¥H¨Ï·sÂÂÀɦW¦b¦P¤@ºÏºÐªº¤£¦P¥Ø¿ý¤º¡F¦pªG¬O³o¼Ëªº¸Ü¡A¨º»ò´N·|§âÂÂÀÉ®×·h²¾¨ì·sªº¥Ø¿ý¤º ( ³o®É­Ô¡ADOS ªº°µªk¨ä¹ê¬O¥u­×§ïºÏºÐ¤¤ÀÉ®×´y­z°Ï¶ô¡A¹ê»Ú¤W¨Ã¨S¦³¯u¥¿ªº·h²¾Àɮפº®e©Ò¦û¥ÎªººÏ°Ï¡A°Ñ¾\µù¤G )¡A·h²¾«áÀÉ®×Äݩʤ¤ªº«O¦sÄÝ©Ê·|®ø¥¢¡C¦pªG¬O DOS 3.1 ª©¤Î¨ä¥H¤W¡A¤]¥i¥H¹ï¥Ø¿ý¶i¦æ§ó¦W¡C

°²¦p³æ¯Âªº¥u¬O­n§ó§ïÀɮצWºÙ¡A¨º»ò ES:DI »P DS:DX ©Ò«üªº·sÂÂÀɦW¡A³Ì¦n³£¨Ï¥Îµ´¹ï¸ô®|¡C³o¼Ëªº¸Ü¡A¤£½×¥Ø«eªº¥Ø¿ý¬O§_¬°·sÂÂÀɮשҦb¥Ø¿ý¡A³£¯à¥¿½T°õ¦æ¡C°²¦p ES:DI »P DS:DX ©Ò«üªº·sÂÂÀɦW¡A¥u­n¦³¤@­Ó¨Ï¥Î¬Û¹ï¸ô®|¡A±¡ªp´N·|«Ü½ÆÂø¡C¨Ò¦p¡A°²¦p¡uTESTREN1.ASM¡v¦b¡uE:\TEST\¡v¥Ø¿ý¤º¡A¦³­Óµ{¦¡ RN.ASM¡A§ó§ïÀɦWªºµ{¦¡¤ù¬q¬O©³¤Uªº¼Ë¤l¡G

old_f   DB      "E:\TEST\TESTREN1.ASM",0    ;µ´¹ï¸ô®|
new_f   DB      "TESTREN2.ASM",0            ;¬Û¹ï¸ô®|
        .
        .
        .
        mov     ax,ds
        mov     es,ax
        mov     dx,OFFSET old_f
        mov     di,OFFSET new_f
        mov     ah,56h
        int     21h

°õ¦æ RN.EXE ®É¡A¦pªG¥Ø«eªº¥Ø¿ý¬O¡uE:\TEST\¡v¡A¨º»ò´N¯à¥¿±`ªº§â¡uE:\TEST\TESTREN1.ASM¡v§ï¦W¦¨¡uE:\TEST\TESTREN2.ASM¡v¡F¦pªG¥Ø«e¥Ø¿ý¬O¡uE:\TEST\¡v¡A¨º»ò°õ¦æ RN.EXE «á¡A«o·|§â¡uE:\TEST\TESTREN1.ASM¡v·h²¾¨ì¡uE:\TESTREN2.ASM¡v¡A³o¬O¦]¬°¥¦²Å¦X¡u·sÂÂÀɦW¦b¦P¤@ºÏºÐªº¤£¦P¥Ø¿ý¡vªº«e´£¡C

¨ú±o©Î³]©wÀɮ׮ɶ¡¤é´Á¡GAH¡×57H/INT 21H

AH¡×57H/INT 21H ¯à°÷¨ú±o©Î³]©wÀɮ׳̫á­×§ïªº®É¶¡»P¤é´Á¡A¦]¦¹¦³¨â­Ó¥\¯à¡G①¨ú±o»P②³]©w¡A¥Ñ AL ¨M©w¡C¤èªk¦p¤U¡G

¨ú±o©Î³]©wÀɮ׮ɶ¡¤é´Á
¿é¤J¡GAH¡×57H
¡@¡@¡@BX¡×ÀÉ®×¥N½X
¡@¡@¡@¦pªG­n¨ú±oÀɮ׳̫á­×§ïªº®É¶¡»P¤é´Á
¡@¡@¡@¡@¡@AL¡×00H
¡@¡@¡@¦pªG­n³]©wÀɮ׳̫á­×§ïªº®É¶¡»P¤é´Á
¡@¡@¡@¡@¡@AL¡×01H
¡@¡@¡@¡@¡@CX¡×Àɮ׳̫á­×§ïªº®É¶¡
¡@¡@¡@¡@¡@DX¡×Àɮ׳̫á­×§ïªº¤é´Á
°õ¦æ¡GINT 21H
ªð¦^¡GNC¡×¦¨¥\¨ú±o©Î³]©w¡C¦pªG¬O¨ú±o¡A«h CX¡×Àɮ׳̫á­×§ïªº®É¶¡
¡@¡@¡@¡@¡@¡@¡@¡@¡@¡@¡@¡@¡@¡@¡@¡@¡@¡@¡@¡@ DX¡×Àɮ׳̫á­×§ïªº¤é´Á
¡@¡@¡@CY¡×¥¢±Ñ¡AAX¡×¿ù»~½X ( ¥i¯à¬O 01H¡B06H¡A½Ð°Ñ¾\µù¤@ )

¤£ºÞ¬O¨ú±oÁÙ¬O³]©w¡ACX ³£¬O«ü®É¶¡¡ADX ³£¬O«ü¤é´Á¡A¨ä®æ¦¡¦p¤U¡G

®É¶¡ ( CX )¤é´Á ( DX )
Bit 0¡ã4¡G¬í¼Æ°£¥H 2
Bit 5¡ã10¡G¤ÀÄÁ
Bit 11¡ã15¡G¤p®É ( 0¡ã23 )
Bit 0¡ã4¡G¤é
Bit 5¡ã8¡G¤ë
Bit 9¡ã15¡G¦è¤¸¦~¡Ð1980

¦b CX ªº²Ä 0 ¨ì²Ä 4 ¦ì¤¸°O¸üªº¨Ã«D¯u¥¿ªº¬í¼Æ¡A¥²¶·§â¥¦­¼¥H¤G¤~¬O¯u¥¿ªº¬í¼Æ¡C­ì¦]¬O¤p®É»P¤ÀÄÁ¦@¦û¥Î¤F 11 ¦ì¤¸¡A¦Ó CX ¤~ 16 ¦ì¤¸¼e¡A©Ò¥H¥u¯à¥Î 5 ­Ó¦ì¤¸ªí¥Ü¬í¼Æ¡A5 ­Ó¦ì¤¸³Ì¦h¥u¯àªí¥Ü 0¡ã31¡A©Ò¥H¤£±o¤w¥u¦³±N¬í¼Æ°£¥H¤G«á°O¿ý©ó CX ªº²Ä 0 ¨ì²Ä 4 ¦ì¤¸¡C¤p®É»P¤ÀÄÁªº¸ê®Æ¤ñ¬í¼Æ­«­n±o¦h¡A¦]¦¹ÁY´îªº¬O¬í¼Æ¡C¦P²z DX ªº²Ä 9 ¨ì²Ä 15 ¦ì¤¸°O¸üªº¨Ã«D¦è¤¸´X¦~¡A¦Ó¬O¦è¤¸´X¦~¦A´î¥h 1980 ( MS¡ÐDOS ½Ï¥Í©ó¦è¤¸ 1981 ¦~ )¡A©Ò¥H¥Ñ DX ¤¤¨ú±oªº¸ê®Æ­n¦A¥[¤W 1980 ¤~¬OÀɮ׳̫á­×§ïªº¦~¥÷¡C

«Ø¥ß·sÀɮסGAH¡×5BH/INT 21H

AH¡×5BH/INT 21H ¬O¥Î¨Ó«Ø¥ß·sÀɮתº¡A¥Îªk©M AH¡×3CH/INT 21H ´X¥G¬Û¦P¡G

«Ø¥ß·sÀÉ®×
¿é¤J¡GAH¡×5BH
¡@¡@¡@DS:DX¡×ASCIZ ¦r¦ê¦ì§}¡A¦¹¦r¦êªí¥ÜÀɮצWºÙ
¡@¡@¡@CX¡×ÀÉ®×ÄÝ©Ê ( ¨£¡uªí¡GÀÉ®×ÄÝ©Ê¡v)
°õ¦æ¡GINT 21H
ªð¦^¡GNC¡×¦¨¥\¡AAX¡×ÀÉ®×¥N½X
¡@¡@¡@CY¡×¥¢±Ñ¡AAX¡×¿ù»~½X ( ¥i¯à¬O 03H¡B04H¡B05H¡B50H¡A½Ð°Ñ¾\µù¤@ )

AH¡×5BH/INT 21H DOS ªA°Èµ{¦¡¬O¥Î¨Ó«Ø¥ßÀɮסA¨ä¿é¤J°Ñ¼Æ¡B¦^¶Ç­È§¡»P AH¡×3CH/INT 21H ¬Û¦P¡C°ß¤@ªº®t§O¬O¡A¦pªG DS:DX ©Ò«ü¦ì§}ªºÀɮפw¦s¦b®É¡AAH¡×5BH/INT 21H ¨Ã¤£·|ºIÂ_ÀɮסA¦Ó¬O²£¥Í¿ù»~¡Aªð¦^®É¡A¶i¦ìºX¼Ð³Q³]©w¡A¥B AX ¬° 50H¡A¥NªíÀɮצs¦b¡C

«Ø¥ß¤l¥Ø¿ý¡GAH¡×39H/INT 21H

«Ø¥ß¤l¥Ø¿ý¡AAH¡×39H/INT 21H¡AªA°Èµ{¦¡ªº¥Îªk¬O

«Ø¥ß¤l¥Ø¿ý
¿é¤J¡GAH¡×39H
¡@¡@¡@DS:DX¡×ASCIZ ¦r¦ê¦ì§}¡A¦¹ ASCIZ ¦r¦ê¬°¤@¸ô®|¦WºÙ¡A³Ì«á¤@­Ó¥Ø¿ý´N¬O­n«Ø¥ßªº¤l¥Ø¿ý
°õ¦æ¡GINT 21H
ªð¦^¡GNC¡×¦¨¥\
¡@¡@¡@CY¡×¥¢±Ñ¡AAX¡×¿ù»~½X ( ¥i¯à¬O 03H¡B05H¡A½Ð°Ñ¾\µù¤@ )

¦b DS:DX ©Ò«ü©wªº¦r¦ê¤¤ªº¤l¥Ø¿ý¡A³£¥²¶·¦s¦b¡A°£¤F³Ì«á¤@­Ó¤§¥~¡A¦pªG¦³¤@­Ó¤£¦s¦b¡A´N·|¥¢±Ñ¡C¦pªG®Ú¥Ø¿ý¤wº¡¡A¤]·|¥¢±Ñ¡C¸ô®|©Ò¥]§tªº¦r¤¸Á`¼Æ¡A¤£¯à¶W¹L 64 ­Ó¡A§_«h¤]·|¥¢±Ñ¡F¦b³o«e´£¤§¤U¡ADOS ³£¯à«Ø¥ß¤l¥Ø¿ý¡A¤£ºÞ³o¨Ç¤l¥Ø¿ý¦³¦h¤Ö¼h¡C

§R°£¤l¥Ø¿ý¡GAH¡×3AH/INT 21H

§R°£¤l¥Ø¿ý¡AAH¡×3AH/INT 21H¡AªA°Èµ{¦¡ªº¥Îªk¬O

§R°£¤l¥Ø¿ý
¿é¤J¡GAH¡×3AH
¡@¡@¡@DS:DX¡×ASCIZ ¦r¦ê¦ì§}¡A¦¹ ASCIZ ¦r¦ê¬°¤@¸ô®|¦WºÙ¡A³Ì«á¤@­Ó¥Ø¿ý´N¬O­n§R°£ªº¤l¥Ø¿ý
°õ¦æ¡GINT 21H
ªð¦^¡GNC¡×¦¨¥\
¡@¡@¡@CY¡×¥¢±Ñ¡AAX¡×¿ù»~½X ( ¥i¯à¬O 03H¡B05H¡B06H¡B10H¡A½Ð°Ñ¾\µù¤@ )

­n§R°£ªº¤l¥Ø¿ý¥²¶·¬OªÅªº¡A§_«h·|µo¥Í¿ù»~¡C¨Æ¹ê¤W¡A¥ô¦ó¤@­Ó¤l¥Ø¿ý³£¥]§t¦³¡u.¡v»P¡u..¡v³o¨â­Ó¡©¥Ø¿ý¡ª¡A¤À§O¥Nªí¥»¨­³o­Ó¤l¥Ø¿ý»P¤W¤@¼h¥Ø¿ý¡C³o¸Ì©Ò»¡¡uªÅªº¡vªº·N«ä¬O°£¤F³o¨â­Ó¤§¥~¡A¤£§t¨ä¥LÀɮשΨä¥L¥Ø¿ý¡C

³]©w¥Ø«eªº¥Ø¿ý¡GAH¡×3BH/INT 21H

³]©w¥Ø«eªº¥Ø¿ý¡AAH¡×3BH/INT 21H¡AªA°Èµ{¦¡ªº¥Îªk¬O

³]©w¥Ø«eªº¥Ø¿ý
¿é¤J¡GAH¡×3BH
¡@¡@¡@DS:DX¡×ASCIZ ¦r¦ê¦ì§}¡A¦¹ ASCIZ ¦r¦ê¬°¤@¸ô®|¦WºÙ¡A³]©w¥Ø«eªº¥Ø¿ý¬°¸ô®|¤Wªº³Ì«á¤@­Ó¤l¥Ø¿ý
°õ¦æ¡GINT 21H
ªð¦^¡GNC¡×¦¨¥\
¡@¡@¡@CY¡×¥¢±Ñ¡AAX¡×¿ù»~½X ( ¥i¯à¬O 03H¡A½Ð°Ñ¾\µù¤@ )

¨C­ÓºÏºÐ¾÷³£¦³¦Û¤vªº¥Ø«e¥Ø¿ý¡ADOS ·|§â³o¨Ç¸ê®Æ°O¿ý°_¨Ó¡C·í§A¦b DOS ´£¥Ü¦r¤¸¤U¤Á´«ºÏºÐ¾÷¦WºÙ®É¡A´N¯à¬Ý¨£¸ÓºÏºÐ¾÷ªº¥Ø«e¥Ø¿ý¡C¦pªG DS:DX ©Ò«üªº¦r¦ê¥]§tºÏºÐ¾÷¦WºÙ¡A§ïÅܪº´N¬O¸ÓºÏºÐ¾÷ªº¥Ø«e¥Ø¿ý¡F¦pªG¤£¥]§tºÏºÐ¾÷¦WºÙ¡A§ïÅܪº¬O¥Ø«eºÏºÐ¾÷ªº¥Ø«e¥Ø¿ý¡C

¨ú±o¥Ø«eªº¥Ø¿ý¡GAH¡×47H/INT 21H

¨ú±o¥Ø«eªº¥Ø¿ý¡AAH¡×47H/INT 21H¡AªA°Èµ{¦¡ªº¥Îªk¬O

¨ú±o¥Ø«eªº¥Ø¿ý
¿é¤J¡GAH¡×47H
¡@¡@¡@DL¡×¨ú±o­þ­ÓºÏºÐ¾÷ªº¥Ø«e¥Ø¿ý ( 00H¡Ð¥Ø«eªººÏºÐ¾÷¡A01H¡ÐA: ºÏºÐ¾÷¡B02H¡ÐB: ºÏºÐ¾÷¡K¡K)
¡@¡@¡@DS:DX¡×±µ¦¬¥Ø«e¥Ø¿ýªº¦r¦ê¦ì§}¡Aªø 64 ­Ó¦ì¤¸²Õ
°õ¦æ¡GINT 21H
ªð¦^¡GNC¡×¦¨¥\¡ADS:DX ©Ò«üªº¦ì§}¶ñ¤J¥Ø«eªº¥Ø¿ý
¡@¡@¡@CY¡×¥¢±Ñ¡AAX¡×¿ù»~½X ( ¥i¯à¬O 03H¡A½Ð°Ñ¾\µù¤@ )

DS:DX ©Ò«üªº¥Ø«e¥Ø¿ý¤£¥]§tºÏºÐ¾÷¦WºÙ¡C



µù¤@¡G¿ù»~½X

¤£½×­þ¤@­Ó DOS ªA°Èµ{¦¡¡A¦³ÃöÀɮ׳B²zªº¿ù»~½X¬Û¦P®É¡A©Ò¥Nªíªº·N¸q¤]¬Û¦P¡A±`¨£ªº¦p¤U¡G

  1. AX¡×01H¡G¤£¦Xªkªº¥\¯à¡C
  2. AX¡×02H¡G§ä¤£¨ìÀɮסC
  3. AX¡×03H¡G§ä¤£¨ì¸ô®|¡C
  4. AX¡×04H¡G¶}±Ò¤Ó¦hÀɮסC( ¥i¥H­×§ï C:\CONFIG.SYS ªº FILES¡A¨Ï¨ä¼Æ¥Ø¼W¥[ )
  5. AX¡×05H¡G©Úµ´¦s¨ú¡C
  6. AX¡×06H¡GµL®ÄªºÀÉ®×¥N½X¡C
  7. AX¡×0CH¡G¦s¨ú¼Ò¦¡¤£¦Xªk¡C
  8. AX¡×10H¡G¸Õ¹Ï§R°£¥»¨­ ( ¦b¥Ø«e¥Ø¿ý¤§¤U¡A§R°£¥Ø«e¥Ø¿ý )¡C
  9. AX¡×11H¡GºÏºÐ¾÷¤£¦P¡C
  10. AX¡×12H¡G¤w¸g¨S¦³²Å¦XªºÀɮסC
  11. AX¡×50H¡GÀɮצs¦b¡C
  12. AX¡×56H¡G±K½X¿ù»~¡C


µù¤G¡GºÏºÐ¤ºªºÀÉ®×

¤p¤ì°¸½Í½×ªº³o¤@³¡¤À¬OÁ¿ DOS¡A©Ò¥H©³¤U¤]´N¶È¹ï DOS ¨Ï¥ÎªºÀɮרt²Î¡AFAT Àɮרt²Î»¡©ú¡C

¦b DOS §@·~¨t²Î¤º¡A¤£ºÞ¬OµwºÐÁÙ¬O³nºÐ¡A¤@¤ùºÏºÐ¤ù³£¥i¥H¹º¤À³\³\¦h¦hªº¦P¤ß¶ê¡A¦Ó¨C­Ó¦P¤ß¶ê¦A¹º¤À¤@­Ó­Ó©·½u©Ò²Õ¦¨¼e«×«Ü¤pªººÏ°Ï ( sector )¡C³o¨ÇºÏ°Ï¦p¦P°O¾ÐÅé¦ì§}¤@¼Ë¡A³£¦³½s¸¹¡A DOS¡BWindows µ¥§@·~¨t²Î¨Ì¾Ú³o¨Ç½s¸¹¤~¯àŪ¨ú©Î¼g¤J¸ê®Æ¡C³o¨ÇºÏ°Ï¤S¹º¤À´X­Ó°Ï°ì¡A¦p¤U¡G

  1. ±Ò°ÊºÏ°Ï ( boot sector )¡G±Ò°ÊºÏ°Ï¥Ñ²Ä¹s­ÓºÏ°Ï¶}©l¡A¸Ì­±°O¸ü¤F§@·~¨t²Î±Ò°Ê©Ò»Ýªºµ{¦¡¡A¥H¤Î³o­ÓºÏºÐªº°ò¥»¸ê®Æ¡A¨Ò¦p±Ò°ÊºÏ°Ï¦³¦h¤Ö­Ó¡B¨C­ÓºÏ°Ï¥iÀx¦s¦h¤Ö¦ì¤¸²Õªº¸ê®Æµ¥µ¥¡C
  2. ÀÉ®×°t¸mªí ( FAT¡AFile Allocation Table )¡GÀÉ®×°t¸mªí³Q¤À¦¨³\¦hÄæ¦ì¡A¨C­ÓÄæ¦ì¤]³£¦³½s¸¹¡A±q¹s¶}©l¡CºÏºÐªº®e¶q¤j¤p¡A¨M©wÄæ¦ì©Ò»Ý¦ì¤¸¼Æ¡A¥i¯à¬O 12¡B16¡B32 ¦ì¤¸¡A¤]¦]¦¹¦³ FAT12¡BFAT16¡BFAT32 µ¥¦WºÙ¡C¤@­ÓÀɮ׳q±`¤£·|¥u¦û¥Î¤@­ÓºÏ°Ï¡A¦¹³B©Ò°O¿ýªº´N¬O¤@­ÓÀɮשҦû¥ÎªººÏ°Ï½s¸¹ªº¦ê±µÃì¡C¤]´N¬O»¡¡A¨C­Ó FAT Äæ¦ìªº¤º®e´N¬OÀɮפU¤@­Ó©Ò¦û¥ÎªººÏ°Ï½s¸¹¡A¤]¬O³o­ÓÀɮפU¤@­Ó FAT Äæ¦ì¡C
    ¨Ò¦p¡A°²³]¦³¤@­ÓÀɮצû¾Ú¥|­ÓºÏ°Ï¡A³o¥|­ÓºÏ°Ï½s¸¹¨Ì§Ç¬O²Ä 20¡B32¡B33¡B44¡A¨º»ò FAT ²Ä 20 ­ÓÄæ¦ì´N·|°O¿ý¬° 32¡AFAT ²Ä 32 ­ÓÄæ¦ì°O¿ý¬° 33¡AFAT ²Ä 33 ­ÓÄæ¦ì°O¿ý¬° 44¡AFAT ²Ä 44 ­ÓÄæ¦ì¬Oµ²§ô°O¸¹¡C©Ò¥H¤~»¡ÀÉ®×°t¸mªí¬OÀɮשҦû¥ÎªººÏ°Ï½s¸¹ªº¦ê±µÃì¡C
  3. ¥Ø¿ý°Ï¡G¦¹°Ï°ìÀx¦s¨C­ÓÀɮתº°ò¥»¸ê®Æ¡A¨C­ÓÀɮתº°ò¥»¸ê®Æ³£¦û¥Î 32 ­Ó¦ì¤¸²Õ¡A³o 32 ­Ó¦ì¤¸²ÕºÙ¬°ÀÉ®×´y­z°Ï¶ô ( file description block¡AÁY¼g¬° FDB )¡C¨C­Ó FDB °O¿ýµÛÀɮצWºÙ¡B³Ì«á­×§ïªº¤é´Á®É¶¡¡BÀÉ®×ÄÝ©Ê¥H¤ÎÀɮשҦû¾Úªº­º­ÓºÏ°Ï½s¸¹ ( ¦¹¼Æ­È¤]¬O­º­Ó FAT Äæ¦ì )¡A¤]´N¬OÀÉ®×°_©l¸ê®Æ¦b­þ¤@­ÓºÏ°Ï¡C
  4. ¸ê®Æ°Ï¡G³o¬O¤@­ÓºÏºÐ©Ò¦û¤ñ¨Ò³Ì¤jªº°Ï°ì¡A¤ñ«e¤T­Ó¤§©MÁÙ¤j¡A¥¦¥Î©ó¦s©ñÀɮפº®e¡C

·í©I¥s AH¡×41H/INT 21H §R°£Àɮ׮ɡADOS ¶È¶È§ä¨ì­n§R°£Àɮתº FDB¡A§âÀɦWªº²Ä¤@­Ó¦r¤¸§ï¦¨§R°£°O¸¹ ( ¤Q¤»¶i¦ìªº¼Æ­È¡A0E5H )¡A¦P®É§R°£ FAT ¤¤ªººÏ°Ï½s¸¹ªº¦ê±µÃì¡A¨ä¾l³£¨S¦³§ïÅÜ¡C©Ò¥HÀɮפº®e¥H¤Î¦b FDB ­º­Ó¦û¥ÎªººÏ°Ï½s¸¹³£ÁÙ¦b¡A¬GºÏºÐ±Ï´©³nÅé¤~¯à±N­è§R°£ªºÀɮױϦ^¡C·íµM¡A¦pªG§R°£Àɮפ§«á¡AºÏºÐ¸g¹L¦h¦¸Åª¼g¡A¨º»ò FAT ¤¤ªº¦ê±µÃì©Î¸ê®Æ°Ï¾D¨ìÂмg¡AÁÙ¬O±Ï¤£¦^¨Ó¡C

·í©I¥s AH¡×56H/INT 21H §ó§ïÀɦW¡A¦pªG·s¡BÂÂÀɦW¬O¦b¦P¤@­ÓºÏºÐ¾÷¤Wªº¤£¦P¤l¥Ø¿ý®É¡ADOS ¶È¶È§ä¨ì¤l¥Ø¿ý¤¤ÂÂÀɮתº FDB¡A±N¨ä FDB §R°£¡A¦P®É¦b·sÀɦW¤¤«ü©wªº¤l¥Ø¿ý²K¥[·sÀɮתº FDB ¸ê®Æ¡AÂÂÀɮשҦû¾ÚªººÏ°Ï¤]³£­ì«Ê¤£°Êªº«O¯dµÛÅܦ¨·sÀɮשҦû¾ÚªººÏ°Ï¡C©Ò¥H§A·|µo²{¦b¦P¤@­ÓºÏºÐ¤º¡A§â¤jÀɮײ¾¨ì¥t¤@­Ó¤l¥Ø¿ý¡A°Ê§@Àþ¶¡´N§¹¦¨¡C