home *** CD-ROM | disk | FTP | other *** search
Text File | 1990-12-05 | 89.0 KB | 3,181 lines |
- âïÇéÇ 6 -- 1 --
- -------
-
- êæÅÄï£çÄéÇìêà ÅÄæïàäÄéÇÆàï£ìÄâÄ ÅÄÉÆÇ: ÅàÉàäÇùÇ öÇëïÄé ê
- ÅÉÄæÆàëÿêà ïéC
- -----------------------------------------------------------------
-
- Å«ªá½π⌐ ¡ÑΓ Γᬫ⌐ ñpπú«⌐ «íΘÑ⌐ íÑñδ ñ½∩ óßÑσ »p«úpá¼¼¿ßΓ«ó,
- ¬á¬ áß¿¡σp«¡¡δ⌐ »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ. ìÑ»«σ«ª¿⌐ ¡á í«½ÑÑ »p«ßΓ«⌐
- »ápώѽ∞¡δ⌐ »«pΓ, »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ, ¬á¬ ¡¿ ¬Γ« í«½ÑÑ
- »«ñóÑpªÑ¡ µÑ½«¼π ßѼÑ⌐ßΓóπ pẽ¿τ¡δσ Γ¿»«ó «Φ¿í«¬ »ÑpÑñáτ¿
- ñá¡¡δσ. Åp«í½Ñ¼á πß½«ª¡∩ÑΓß∩ ΓѼ, τΓ« ß¿ú¡á½ "»«ñΓóÑpªñÑ¡¿Ñ
- ßó∩º¿", ¬«Γ«pδ⌐ »«¼«úáÑΓ ¬«ppÑ¬Γ¡« óδ»«½¡∩Γ∞ ß««ΓóÑΓßΓóπεΘπε
- »ÑpÑñáτπ ñá¡¡δσ »p¿¼Ñ¡¿Γѽ∞¡« ¬ »«ß½Ññ«óáΓѽ∞¡«¼π »«pΓπ τáßΓ«
- »ÑpÑñáÑΓß∩ "¼¿¼«" Φ¿¡δ ¬áíѽ∩, ßó∩ºδóáεΘÑú« »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ
- ¿ ó¡ÑΦ¡ÑÑ πßΓp«⌐ßΓó«. Äñ¡á¬«, ¡Ñß¼«Γp∩ ¡á φΓ¿
- »p«í½Ñ¼δ »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ ¿ß»«½∞ºπÑΓß∩ Φ¿pÑ, Γᬠ¬á¬ ¿¼Ñ¡¡«
- «¡ »«ºó«½∩ÑΓ ¿ß»«½∞º«óáΓ∞ ßá¼δ⌐ ñÑΦÑóδ⌐ »πΓ∞ ñ½∩ ß«Ññ¿¡Ñ¡¿∩ ñóπσ
- πßΓp«⌐ßΓó, pạÑßÑ¡¡δσ ¡á páßßΓ«∩¡¿Ñ, »pÑóδΦáεΘÑÑ »ápπ ΣπΓ«ó.
-
- ûѽ∞ φΓ«⌐ ú½áóδ - ñáΓ∞ «ß¡«óδ πßΓp«⌐ßΓóá »«ß½Ññ«óáΓѽ∞¡«ú«
- »«pΓá ¿ páí«Γδ ß ¡¿¼, ó¬½ετá∩ ¿¡¿µ¿á½¿ºáµ¿ε, »ÑpÑñáτπ ¿ »p¿Ñ¼
- ñá¡¡δσ, á Γá¬ªÑ «íßπñ¿Γ∞ ¡á¿í«½ÑÑ «íΘ¿Ñ «Φ¿í¬¿, 󫺡¿¬áεΘ¿Ñ ó«
- ópѼ∩ páí«Γδ ß »«ß½Ññ«óáΓѽ∞¡δ¼ »«pΓ«¼.
-
- ìáí«α «»Ñpᵿ⌐ páí«Γδ ß »«ß½Ññ«óáΓѽ∞¡δ¼ »«pΓ«¼
- «íπß½áó½¿óáÑΓ Ñú« ¿ß»«½∞º«óá¡¿Ñ ó ¬áτÑßΓóÑ ß«ßΓáó¡«⌐ τáßΓ¿ »«
- ¬pá⌐¡Ñ⌐ ¼ÑpÑ ó ñóπσ »p¿½«ªÑ¡¿∩σ. é«-»Ñpóδσ, φΓ« »p«úpá¼¼á
- »ÑpÑß佬¿ Σá⌐½á, ¬«Γ«pá∩ ¼«ªÑΓ ¿ß»«½∞º«óáΓ∞ß∩ ñ½∩ »ÑpÑñáτ¿
- pẽ¿τ¡δσ Γ¿»«ó Σá⌐½«ó (ó¬½ετá∩ ñó«¿τ¡δÑ Σá⌐½δ) ¼Ñªñπ ñóπ¼∩
- ¬«¼»∞εΓÑpἿ. Åp«úpá¼¼á »ÑpÑß佬¿ Σá⌐½á «ß«íÑ¡¡« »«½Ñº¡á »p¿
- pÑΦÑ¡¿¿ »p«í½Ñ¼δ ßΓδ¬«ó¬¿ pẽ¿τ¡δσ Γ¿»«ó ¬«¼»∞εΓÑp«ó. é«-óΓ«pδσ,
- φΓ« »p«í½Ñ¼á ß«ºñá¡¿∩ »p«ßΓÑ⌐Φ¿σ ½«¬á½∞¡δσ óδτ¿ß½¿Γѽ∞¡δσ ßÑΓÑ⌐
- (ïéæ), ó¬½ετáεΘ¿σ ó ßÑí∩ Σá⌐½«óδ⌐ »p«µÑßß«p (ñ½∩ »«ññÑpª¬¿
- ó¡ÑΦ¡¿σ çô í«½∞Φ«⌐ Ѽ¬«ßΓ¿) ¿ ¡áí«p ¿º ñóπσ ¡«óδσ ¬«¼á¡ñ,
- »«ºó«½∩εΘ¿σ πñá½Ñ¡¡δ¼ ¬«¼»∞εΓÑpá¼ ºáúpπªáΓ∞ Σá⌐½δ ¿º ¿½¿
- ºá»¿ßδóáΓ∞ ó Σá⌐½«óδ⌐ »p«µÑßß«p.
-
- Åp¿¼Ñpδ, »p¿óÑñÑ¡¡δÑ ó φΓ«⌐ ú½áóÑ, ß«ó¼ÑßΓ¿¼δ ß ¬«¼»∞εΓÑpἿ
- IBM PC, XT, AT ¿½¿ PS/2 (á Γá¬ªÑ ¡á ß«ó¼ÑßΓ¿¼δσ ß φΓ¿¼¿ ¼«ñѽ∩¼¿)
- »«ñ π»páó½Ñ¡¿Ñ¼ DOS. Äñ¡á¬« óδ ½Ñú¬« ß¼«ªÑΓÑ «ßπΘÑßΓó¿Γ∞ ¿σ
- »ÑpÑ¡«ß ó ñpπú¿Ñ «»Ñpᵿ«¡¡δÑ ß¿ßΓѼδ, ó¬½ετá∩ OS/2.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 2 --
-
-
- ÇæêìòÉÄììǃ ÅÄæïàäÄéÇÆàï£ìǃ ÅàÉàäÇùÇ äÇìì¢ò
- -----------------------------------------------------------------
-
- ÅÑpÑñ ΓѼ, ¬á¬ »ÑpÑ⌐Γ¿ ¬ ¿ºπτÑ¡¿ε »«ß½Ññ«óáΓѽ∞¡«ú«
- áß¿¡σp«¡¡«ú« »«pΓá ó««íΘÑ óá¼ ¡Ñ«íσ«ñ¿¼« »«½πτ¿Γ∞ ¡Ñ¬«Γ«pδÑ
- ßóÑñÑ¡¿∩ « »p¿¡µ¿»áσ áß¿¡σp«¡¡«⌐ »ÑpÑñáτ¿ ñá¡¡δσ. ( é ñá½∞¡Ñ⌐ΦѼ,
- ñ½∩ »p«ßΓ«Γδ ¿º½«ªÑ¡¿∩ ¼áΓÑp¿á½á íπñѼ ¡áºδóáΓ∞ áß¿¡σp«¡¡δ⌐
- »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ - "»«ß½Ññ«óáΓѽ∞¡δ¼ »«pΓ«¼"). äá¡¡δÑ
- »ÑpÑñáεΓß∩ τÑpѺ »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ »«pµ¿∩¼¿ ó «ñ¿¡ í¿Γ ºá
- Ññ¿¡¿µπ ópѼѡ¿. é φΓ«¼ ß«ßΓ«¿Γ «Γ½¿τ¿Ñ »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá
- «Γ »ápώѽ∞¡«ú«, ¬«Γ«pδ⌐ «ßπΘÑßΓó½∩ÑΓ »ÑpÑñáτπ ñá¡¡δσ »«pµ¿∩¼¿ ó
- «ñ¿¡ íá⌐Γ ºá Ññ¿¡¿µπ ópѼѡ¿. ÅÑpÑñáτá ñá¡¡δσ ¡áºδóáÑΓß∩
- áß¿¡σp«¡¡«⌐ »«Γ«¼π, τΓ« ñ½¿¡á ¿¡ΓÑpóá½á ópѼѡ¿ ¼Ñªñπ »ÑpÑñáτÑ⌐
- «τÑpÑñ¡«ú« íá⌐Γá ¿¡Σ«p¼áµ¿¿ (»« 1 í¿Γπ ºá Ññ¿¡¿µπ ópѼѡ¿) ¡Ñ
- ¿¼ÑÑΓ ¡¿¬á¬«ú« º¡áτÑ¡¿∩. Å«φΓ«¼π «ß¡«ó¡δ¼¿ ∩ó½∩εΓß∩ ß¿¡σp«¡¿ºáµ¿∩
- ¿ »«ß½Ññ«óáΓѽ∞¡«ßΓ∞ »ÑpÑñáτ¿ µÑ»«τ¬¿ í¿Γ,¬«Γ«pδÑ ó ¬«¡Ñτ¡«¼
- ¿Γ«úÑ ß«ßΓáó½∩εΓ íá⌐Γ ¿½¿ ñpπúπε ¿¡Σ«p¼áµ¿«¡¡πε Ññ¿¡¿µπ.
-
- èáªñδ⌐ íá⌐Γ ñá¡¡δσ, »ÑpÑñáóáѼδσ τÑpѺ »«ß½Ññ«óáΓѽ∞¡δ⌐
- »«pΓ, ß«ßΓ«¿Γ ¿º ß½ÑñπεΘÑ⌐ »«ß½Ññ«óáΓѽ∞¡«ßΓ¿ ß¿ú¡á½∞¡δσ í¿Γ«ó:
-
- 1. Äñ¿¡ ßΓápΓ«óδ⌐ í¿Γ
- 2. é«ßѼ∞ í¿Γ«ó ñá¡¡δσ ( ó ¡Ñ¬«Γ«pδσ ß½πτá∩σ - 7 )
- 3. ìÑ«í∩ºáΓѽ∞¡δ⌐ í¿Γ τÑΓ¡«ßΓ¿
- 4. Äñ¿¡ ¿½¿ ñóá ¬«¡Ñτ¡δσ í¿Γá
-
- îѪñπ »ÑpÑñáτÑ⌐ ¬áªñ«ú« íá⌐Γá ¼«ªÑΓ »p«σ«ñ¿Γ∞ ¡Ñ¬«Γ«pδ⌐
- »p«¼ÑªπΓ«¬ ópѼѡ¿.
-
- épѼ∩ »p«ßΓ«∩ ¬á¡á½á »ÑpÑñáτ¿ ñ½∩ φΓ«ú« pѪ¿¼á ñ«ó«½∞¡«
- óѽ¿¬«. î½áñΦ¿⌐ í¿Γ »ÑpÑñáóáѼ«⌐ "»«pµ¿¿" ñá¡¡δσ ¿¼ÑÑΓ ¡π½Ñó«Ñ
- º¡áτÑ¡¿Ñ, ßΓápΦ¿⌐ í¿Γ, ºáóÑpΦáεΘ¿⌐ «τÑpÑñ¡πε "»«pµ¿ε" ñá¡¡δσ,
- »p¿¡¿¼áÑΓ º¡áτÑ¡¿Ñ páó¡«Ñ Ññ¿¡¿µÑ. æΓápΦ¿⌐ í¿Γ ß¿ú¡á½¿º¿pπÑΓ «
- ¡áτá½Ñ »ÑpÑñáτ¿ ¡«ó«ú« íá⌐Γá, ¬«Γ«pδ⌐ ßτ¿ΓδóáÑΓß∩ ó ¬á¡á½ ºá «ñ¿¡
- µ¿¬½, ¡áτ¿¡á∩ ß ¼½áñΦÑú« í¿Γá. ü¿Γδ ñá¡¡δσ »ÑpÑñáεΓß∩ óß½Ññ ºá
- ¡Ñ«í∩ºáΓѽ∞¡δ¼ í¿Γ«¼ τÑΓ¡«ßΓ¿. é ¬«¡µÑ »ÑpÑßδ½áεΓß∩ «ñ¿¡ ¿½¿ ñóá
- í¿Γá, ß¿ú¡á½¿º¿pπεΘ¿σ « ¬«¡µÑ «τÑpÑñ¡«⌐ "»«pµ¿¿" ñá¡¡δσ,
- ßτ¿Γá¡¡δσ ºá «ñ¿¡ µ¿¬½. çáóÑpΦáεΘ¿Ñ (¬«¡Ñτ¡δÑ) í¿Γδ «»pÑñѽ∩εΓ
- ¼¿¡¿¼á½∞¡«Ñ ópѼ∩ ¼Ñªñπ »ÑpÑñáτÑ⌐ ñóπσ íá⌐Γ«ó. Äíδτ¡« τ¿ß½«
- ºáóÑpΦáεΘ¿σ í¿Γ«ó ¡Ñ ¿¼ÑÑΓ í«½∞Φ«ú« º¡áτÑ¡¿∩, »«φΓ«¼π óδ ¼«ªÑΓÑ
- ¿ß»«½∞º«óáΓ∞ ½¿í« «ñ¿¡, ½¿í« ñóá ºáóÑpΦáεΘ¿σ í¿Γá ó ºáó¿ß¿¼«ßΓ¿
- «Γ Γ«ú«, ¬á¬«Ñ ¿σ τ¿ß½« ¿ß»«½∞ºπεΓ »ÑpÑñáεΘ¿⌐ ¿ »p¿¡¿¼áεΘ¿⌐
- »«pΓδ.
-
- ü¿Γ τÑΓ¡«ßΓ¿, Ñß½¿ «¡ »p¿ßπΓßΓóπÑΓ ó »ÑpÑñáóáѼ«¼ ß««íΘÑ¡¿¿,
- ¿ß»«½∞ºπÑΓß∩ ñ½∩ ¬«¡Γp«½∩ ¬«ppÑ¬Γ¡«ßΓ¿ »ÑpÑñáτ¿ ¿ »«¿ß¬á «Φ¿í«¬.
- è«¡Γp«½∞ »ÑpÑñáτ¿ ¼«ªÑΓ »p«ó«ñ¿Γ∞ß∩ ¬á¬ ¡á τÑΓ¡«ßΓ∞ (¬«¡Γp«½∞¡δ⌐
- páºp∩ñ páóÑ¡ ßπ¼¼Ñ »« ¼«ñπ½ε 2 ¿¡Σ«p¼áµ¿«¡¡δσ páºp∩ñ«ó ¿ «íΘÑÑ
- τ¿ß½« Ññ¿¡¿τ¡δσ páºp∩ñ«ó τÑΓ¡«), Γᬠ¿ ¡á ¡ÑτÑΓ¡«ßΓ∞ (¬«¡Γp«½∞¡δ⌐
- páºp∩ñ ¡Ñ páóÑ¡ ßπ¼¼Ñ »« ¼«ñπ½ε 2 ¿¡Σ«p¼áµ¿«¡¡δσ páºp∩ñ«ó ¿ «íΘÑÑ
- τ¿ß½« Ññ¿¡¿τ¡δσ páºp∩ñ«ó ¡ÑτÑΓ¡«).
-
- 欫p«ßΓ∞ »ÑpÑñáτ¿ í¿Γ«ó »« ¬á¡á½π ¿º¼Ñp∩ÑΓß∩ ó í«ñáσ (í¿Γ ó
- ßѬπ¡ñπ). ìῼѡ∞ΦÑ⌐ ߬«p«ßΓ∞ε »ÑpÑñáτ¿ ¿¡Σ«p¼áµ¿¿ ßτ¿ΓáÑΓß∩ 300
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 3 --
-
-
- í«ñ. ¥Γá ߬«p«ßΓ∞ »ÑpÑñáτ¿ ¿ß»«½∞º«óá½áß∞ ó ßΓápδσ ¼«ñѼáσ
- (ßÑ⌐τáß í«½∞Φ¿¡ßΓó« ¼«ñѼ«ó »«ºó«½∩εΓ ñ«ßΓ¿úáΓ∞ ߬«p«ßΓ¿ »ÑpÑñáτ¿
- «Γ 1200 ñ« 2400 í«ñ). æÑ¼Ñ⌐ßΓó« ¬«¼»∞εΓÑp«ó IBM PC »«ññÑpª¿óáεΓ
- ߬«p«ßΓ∞ »ÑpÑñáτ¿ ñá¡¡δσ ó 9600 í«ñ. ìѬ«Γ«pδÑ Γ¿»δ ¬«¼»∞εΓÑp«ó
- »«ºó«½∩εΓ ñ«ßΓ¿úáΓ∞ ߬«p«ßΓ¿ »ÑpÑñáτ¿ ñá¡¡δσ ó 38400 í«ñ!
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 4 --
-
-
- æÆÇìäÇÉÆ RS-232
- -----------------------------------------------------------------
-
- ìÑß¼«Γp∩ ¡á Γ«, τΓ« ¿ºπτÑ¡¿Ñ ßΓá¡ñápΓá RS-232 ¡Ñ ¿¼ÑÑΓ
- í«½∞Φ«ú« ó½¿∩¡¿∩ ¡á »«¡¿¼á¡¿Ñ páí«Γδ áß¿¡σp«¡¡«ú«
- »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá ó µÑ½«¼, «º¡á¬«¼½Ñ¡¿Ñ τ¿ΓáΓѽ∩ ß«
- ßΓá¡ñápΓ«¼ áß¿¡σp«¡¡«ú« »«ß½Ññ«óáΓѽ∞¡«ú« ¿¡ΓÑpΣÑ⌐ßá RS-232
- (á¡á½«ú ó æææÉ - ßΓδ¬ æ-2) ∩ó½∩ÑΓß∩ µÑ½∞ε ¡áßΓ«∩ΘÑ⌐ ú½áóδ.
- êºπτÑ¡¿Ñ φΓ«ú« ¼áΓÑp¿á½á »«¼«ªÑΓ óá¼ í«½ÑÑ ñÑΓá½∞¡« »«¡∩Γ∞, ¬á¬¿Ñ
- »p«í½Ñ¼δ 󫺡¿¬áεΓ »p¿ ¿ß»«½∞º«óá¡¿¿ »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá ¿
- ¬á¬ φΓ¿ »p«í½Ñ¼δ ¼«úπΓ íδΓ∞ páºpÑΦÑ¡δ.
-
- è«¡Σ¿úπpᵿ∩ í«½∞Φ¿¡ßΓóá »«ß½Ññ«óáΓѽ∞¡δσ »«pΓ«ó ∩ó½∩ÑΓß∩
- ßΓá¡ñápΓ¡«⌐, «ñ¡á¬« ¡á¿í«½ÑÑ Φ¿p«¬«Ñ páß»p«ßΓpá¡Ñ¡¿Ñ »«½πτ¿½á
- ¬«¡Σ¿úπpᵿ∩, ß««ΓóÑΓßΓóπεΘá∩ ßΓá¡ñápΓπ RS-232. Å« φΓ«¼π
- ßΓá¡ñápΓπ páºΩѼ ß«ñÑpª¿Γ 25 ¬«¡Γá¬Γ«ó. (é ¬«¼»∞εΓÑpÑ IBM PC AT
- ¿ß»«½∞ºπÑΓß∩ 9-Γ¿ ¬«¡Γá¬Γ¡δ⌐ páºΩѼ). æ½ÑñπÑΓ «Γ¼ÑΓ¿Γ∞, τΓ«
- ñ«ó«½∞¡« í«½∞Φ«Ñ τ¿ß½« »«ß½Ññ«óáΓѽ∞¡δσ »«pΓ«ó ¡Ñ »«ññÑpª¿óáεΓ
- óÑß∞ ¡áí«p ß¿ú¡á½«ó, ߻ѵ¿Σ¿µ¿p«óá¡¡δσ ó ßΓá¡ñápΓÑ RS-232.
- ìѬ«Γ«pδÑ ß¿ú¡á½δ ¡Ñ »«ññÑpª¿óáεΓß∩ ó ßó∩º¿ ß ΓѼ, τΓ« «¡¿ ¡Ñ
- »pÑñ¡áº¡áτÑ¡δ ñ½∩ ¿ß»«½∞º«óá¡¿∩ ó Γᬫ¼ »p¿½«ªÑ¡¿¿ ¿ ß½πªáΓ ñ½∩
- ñpπú¿σ µÑ½Ñ⌐; ñpπú¿Ñ ¡Ñ »«ññÑpª¿óáεΓß∩ »« »p¿τ¿¡Ñ Γ«ú«, τΓ« «¡¿
- óδ»π߬὿ß∞ ó Γ« ópѼ∩, ¬«úñá ßΓá¡ñápΓ RS-232 ÑΘÑ ¡Ñ ßπΘÑßΓó«óá½
- ó««íΘÑ ¿½¿ ªÑ µÑ½∞ε ¿σ ß«ºñá¡¿∩ ¡Ñ ∩ó½∩½áß∞ »«½¡á∩ »«ññÑpª¬á
- ßΓá¡ñápΓá RS-232 ¿ «¡¿ ó φΓ«¼ ß½πτáÑ ó¬½ετáεΓ ½¿Φ∞ «úpá¡¿τÑ¡¡δ⌐
- ¡áí«p ß¿ú¡á½«ó RS-232 . ìá¿í«½ÑÑ «íΘ¿¼¿ ß¿ú¡á½á¼¿ ßΓá¡ñápΓá
- RS-232 ∩ó½∩εΓß∩:
-
- æ¿ú¡á½ ÇíípÑó¿áΓπpá ÿΓδp∞ páºΩѼá
- ------ ------------ ---------------
- çá»p«ß ¡á »«ß佬π ñá¡¡δσ RTS 4
- Äτ¿ßΓ¬á ñ½∩ »«ß佬¿ CTS 5
- ìáí«p ñá¡¡δσ ú«Γ«ó DSR 6
- ìáí«p ñá¡¡δσ ºáóÑpΦÑ¡ DTR 20
- ÅÑpÑñáτá ñá¡¡δσ TxD 2
- Åp¿Ñ¼ ñá¡¡δσ RxD 3
- çѼ½∩ GRD 7
-
-
- ìá ßἫ¼ ñÑ½Ñ ß¿ú¡á½«ó ¡á¼¡«ú« í«½∞ΦÑ ¿ φΓ« «íπß½«ó½Ñ¡« ΓѼ,
- τΓ« »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ »Ñpó«¡áτá½∞¡« páºpáíáΓδóá½ß∩ ¬á¬
- πßΓp«⌐ßΓó« »«ññÑpª¬¿ ¼«ñѼá. é ßó∩º¿ ß φΓ¿¼, Ñß½¿ »«pΓ
- ¿ß»«½∞ºπÑΓß∩ ß«ó¼ÑßΓ¡« ß ñpπú¿¼¿ πßΓp«⌐ßΓóἿ, Γ« ¼¡«ú¿Ñ ¿º Ñú«
- ß¿ú¡á½«ó »p«ßΓ« ó φΓ«¼ ß½πτáÑ ¡Ñ ¡πª¡δ. ¥Γ¿ ß¿ú¡á½δ ¿ß»«½∞ºπεΓß∩
- ñ½∩ πßΓá¡«ó½Ñ¡¿∩ »p«Γ«¬«½á á»»ápáΓ¡«ú« πp«ó¡∩ ¼Ñªñπ ¼«ñѼ«¼ ¿
- ¬«¼»∞εΓÑp«¼, Ñß½¿ φëà ¬«¼»∞εΓÑp (1) ÑΘÑ ¡Ñ »ÑpÑñáóá½ ¿¡Σ«p¼áµ¿ε,
- ¡« πªÑ ú«Γ«ó ¬ ÑÑ »ÑpÑñáτÑ ¿½¿ (2) »ÑpÑñáτá ñá¡¡δσ «Γ ¼«ñÑ¼á ¬
- ¬«¼»∞εΓÑpπ ÑΘÑ ¡Ñ «ßπΘÑßΓó½∩½áß∞.
-
- ÄΦ¿í¬á ¬áñp¿α«óá¡¿∩ (Γ.Ñ. «Φ¿í¬á, 󫺡¿¬áεΘá∩ »p¿ »ÑpÑñáτÑ
- »«pµ¿¿ ñá¡¡δσ, »ÑpÑñáóáѼ«⌐ ¬á¡á½∞¡δ¼ πp«ó¡Ñ¼ ßÑΓÑó«ú«
- óºá¿¼«ñÑ⌐ßΓó¿∩) Σ¿¬ß¿pπÑΓß∩ ó ß½πτáÑ, Ñß½¿ τáßΓ«Γδ
- ß¿¡σp«¡¿º¿pπεΘ¿σ ¿¼»π½∞ß«ó ñóπσ »«pΓ«ó º¡áτ¿Γѽ∞¡« «Γ½¿τáεΓß∩
- ñpπú «Γ ñpπúá. èᬠóδ ¼«ªÑΓÑ ñ«úáñáΓ∞ß∩, »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 5 --
-
-
- »«ß½Ñ Γ«ú«, ¬á¬ «¡ «í¡ápπª¿½ ßΓápΓ«óδ⌐ í¿Γ, óδñѽ∩ÑΓ pÑú¿ßΓp
- óó«ñá, ¬«Γ«pδ⌐ ºá ¬áªñδ⌐ µ¿¬½ ßτ¿ΓδóáÑΓ «ñ¿¡ í¿Γ. 使¡á φΓ«ú«
- µ¿¬½á «»pÑñѽ∩ÑΓß∩ ߬«p«ßΓ∞ε »ÑpÑñáτ¿ ñá¡¡δσ. Äñ¡á¬« ópѼ∩
- ¡áσ«ªñÑ¡¿∩ í¿Γá ó peú¿ßΓpe «»pÑñѽ∩ÑΓß∩ Γá¬Γ«ó«⌐ τáßëë⌐
- ß¿ßΓѼδ. àß½¿ τáßΓ«Γá ¬«¼»∞εΓÑpá-»p¿Ñ¼¡¿¬á ¡Ññ«ßΓáΓ«τ¡á ñ½∩
- »«¬pδΓ¿∩ τáßΓ«Γδ ¬«¼»∞εΓÑpá-¿ßΓ«τ¡¿¬á, Γ« »p«¿ßσ«ñ¿Γ »«ΓÑp∩
- »«½πτÑ¡¡«ú« í¿Γá (Γ.¬. pÑú¿ßΓp ºá¡∩Γ), ó ßó∩º¿ ß τѼ ¿
- pÑú¿ßΓp¿pπÑΓß∩ «Φ¿í¬á ¬áñα¿p«óá¡¿∩ (framing error).
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 6 --
-
-
- ÇÅÅÇÉÇÆìÄà ÅÄäÆéàÉåäàìêà æéƒçê
- -----------------------------------------------------------------
-
- ìÑ»«ßpÑñßΓóÑ¡¡á∩ »ÑpÑñáτá ñá¡¡δσ ¿º »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá
- óδ»«½¡∩ÑΓß∩ »«ß½Ñ Γ«ú«, ¬á¬ ¼«¡¿Γ«p «í¡ápπª¿Γ ß¿ú¡á½
- "«τ¿ßΓ¬á-ñ½∩-»«ß佬¿" (CTS), «Γ»páó½Ñ¡¡δ⌐ ¿º »«pΓá-»p¿Ñ¼¡¿¬á. éδ
- ¡Ñ ñ«½ª¡δ »ÑpÑñáóáΓ∞ ñá¡¡δÑ ñ« ΓÑσ »«p, »«¬á ß »«¼«Θ∞ε ß¿ú¡á½á
- "«τ¿ßΓ¬á-ñ½∩-»«ß佬¿" ¡Ñ íπñÑΓ ¿¡ñ¿µ¿p«óá¡á ¡áñѪ¡«ßΓ∞ ¿
- íѺ«»áß¡«ßΓ∞ »ÑpÑñáτ¿. Æá¬¿¼ «ípẫ¼, »p¿ ¿ß»«½∞º«óá¡¿¿
- á»»ápáΓ¡«ú« »«ñΓóÑpªñÑ¡¿∩ ßó∩º¿ »«ñ»p«úpá¼¼á »ÑpÑñáτ¿ ñá¡¡δσ,
- ¡á»¿ßá¡¡á∩ ó ΓÑp¼¿¡áσ »ßÑóñ«-æê, íπñÑΓ ¿¼ÑΓ∞ ó¿ñ:
-
- do {
- while(not CTS) wait;
- send(byte);
- } while(bytes to send);
-
- àß½¿ óδ ¿¼ÑÑΓÑ ß«Ññ¿¡Ñ¡¡δÑ ½¿¡¿Ñ⌐ ßó∩º¿ á»»ápáΓ¡δÑ ßpÑñßΓóá
- ¿ ¿σ ß«»p∩ªÑ¡¿Ñ ß ½¿¡¿Ñ⌐ ßó∩º¿ óδ»«½¡Ñ¡« »« ßΓá¡ñápΓπ RS-232, Γ«
- óδ ß πß»Ñσ«¼ ¼«ªÑΓÑ ¿ß»«½∞º«óáΓ∞ ΓÑ »pÑ¿¼πΘÑßΓóá, ¬«Γ«pδÑ óá¼
- ñáÑΓ á»»ápáΓ¡«Ñ »«ñΓóÑpªñÑ¡¿Ñ ßó∩º¿. Äñ¡á¬« ß«óßѼ ¡Ññáó¡« φΓ«ú«
- ¡Ñ½∞º∩ í佫 ñѽáΓ∞.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 7 --
-
-
- ÅÉÄüïàî¢ ÅàÉàäÇùê äÇìì¢ò
- -----------------------------------------------------------------
-
- Åp¿ «púá¡¿ºáµ¿¿ »ÑpÑñáτ¿ ñá¡¡δσ ß »«¼«Θ∞ε ¼«ñÑ¼á ¡Ñ¬«Γ«pδÑ
- ß¿ú¡á½δ ¿ß»«½∞ºπεΓß∩ ñ½∩ «»pÑñѽѡ¿∩ ú«Γ«ó¡«ßΓ¿ ñá¡¡δσ ¿½¿
- «»pÑñѽѡ¿∩ ß½ÑñπεΘÑú« íá⌐Γá »«ß佬¿. Äñ¡á¬«, ¬«úñá »ÑpÑñáτá
- ñá¡¡δσ «ßπΘÑßΓó½∩ÑΓß∩ ¼Ñªñπ ñóπ¼∩ ¬«¼»∞εΓÑpἿ, Γ« ¡áí«p ß¿ú¡á½«ó
- (¡Ñ ¡Ñ«íσ«ñ¿¼δ⌐, ¡« ªÑ½áΓѽ∞¡δ⌐), ¿ß»«½∞ºπѼδ⌐ ñ½∩ «í¼Ñ¡á
- ñá¡¡δ¼¿, ¼«ªÑΓ íδΓ∞ «úpá¡¿τÑ¡ ½¿Φ∞ ß¿ú¡á½á¼¿ GRD, TxD ¿ RxD.
- Äß¡«ó¡δ¼¿ ñ«ó«ñἿ ºá ¿ß»«½∞º«óá¡¿Ñ φΓ¿σ ΓpÑσ
- á»»ápáΓ¡«-pÑ὿º«óá¡¡δσ ¼¿¬p«»p«úpá¼¼, ∩ó½∩ÑΓß∩ º¡áτ¿Γѽ∞¡«Ñ
- π¼Ñ¡∞ΦÑ¡¿Ñ ßΓ«¿¼«ßΓ¿ »ÑpÑñáτ¿ ñá¡¡δσ »« ßpáó¡Ñ¡¿ε ß
- ¿ß»«½∞º«ó᡿Ѽ »∩Γ¿ ¿½¿, ߬áªÑ¼, ΦÑßΓ¿ ¼¿¬p«»p«úpá¼¼ π»páó½Ñ¡¿∩.
- àß½¿ ñóá ¬«¼»∞εΓÑpá «ñ¡«ú« Γ¿»á ß«Ññ¿¡Ñ¡δ ¬á¡á½«¼ »ÑpÑñáτ¿ ñá¡¡δσ
- ¿ «ñ¿¡ ¿º ¡¿σ ú«Γ«ó »ÑpÑñáΓ∞ ñá¡¡δÑ, Γ« óΓ«p«⌐ ΓÑ«pÑΓ¿τÑ߬¿
- óßÑúñá ú«Γ«ó »p¿¡∩Γ∞ ¿σ. Äñ¡á¬« ó ßΓá¡ñápΓÑ RS-232 ¿¼ÑÑΓß∩ »p∩¼«-
- Γᬿ ¡áßΓ«∩Θ¿⌐ ∩Θ¿¬ Åá¡ñ«pδ, ß«ñÑpªáΘ¿⌐ «Φ¿í¬¿, ßó∩ºá¡¡δÑ ß
- 󫺼«ª¡«ßΓ∞ε »«ΓÑp¿ ¿½¿ «íσ«ñá ß¿ú¡á½«ó »p«Γ«¬«½á RS-232.
- ìá¿í«½ÑÑ ¡Ñ»p¿∩Γ¡δ¼¿ «Φ¿í¬á¼¿ ∩ó½∩εΓß∩ «Φ¿í¬¿, ßó∩ºá¡¡δÑ ß
- »ÑpÑ»«½¡Ñ¡¿Ñ¼ pÑú¿ßΓpá (overrun error).
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 8 --
-
-
- ÅàÉàÅÄïìàìêà ÉàâêæÆÉÇ-ÅÉêàîìêèÇ
- -----------------------------------------------------------------
-
- àß½¿ ñ½∩ ß«Ññ¿¡Ñ¡¿∩ ñóπσ »«ß½Ññ«óáΓѽ∞¡δσ »«pΓ«ó
- ¿ß»«½∞ºπεΓß∩ Γ«½∞¬« Γp¿ ¼¿¬p«»p«úpá¼¼δ (ß¿ú¡á½á), Γ« 󫺡¿¬áÑΓ
- ¡Ñ«íσ«ñ¿¼«ßΓ∞ ¿ß»«½∞º«óáΓ∞ ßó«Ñ«ípạδ⌐ "Γpε¬" ß
- »«pΓ«¼-¿ßΓ«τ¡¿¬«¼ ó »pÑñ»«½«ªÑ¡¿¿, τΓ« »«pΓ-»p¿Ñ¼¡¿¬ πªÑ ú«Γ«ó ¬
- »p¿Ñ¼π ñá¡¡δσ. ¥Γ«Γ "Γpε¬" «íδτ¡« óδ»«½¡∩ÑΓß∩ »πΓѼ ß«Ññ¿¡Ñ¡¿∩
- ó¼ÑßΓÑ 6, 8 ¿ 20 ΦΓδpÑ⌐ 25-ΦΓδpÑó«ú« páºΩѼá. é ß½πτáÑ ¡Ñπñáτ¿
- φΓá »p«µÑñπpá »«ºó«½∩ÑΓ «í¡ápπª¿Γ∞ «Φ¿í¬π »ÑpÑ»«½¡Ñ¡¿∩ pÑú¿ßΓpá
- ñá¡¡δσ ß í«½∞Φ«⌐ óÑp«∩Γ¡«ßΓ∞ε. ä«»πßΓ¿¼ ΓÑ»Ñp∞, τΓ« ¬«¼»∞εΓÑp Ç
- í«½ÑÑ »p«¿ºó«ñ¿Γѽ∞¡δ⌐, τѼ ¬«¼»∞εΓÑp é. àß½¿ á»»ápáΓ¡«Ñ
- »«ñΓóÑpªñÑ¡¿Ñ ßó∩º¿ ¡Ñ ¿ß»«½∞ºπÑΓß∩, á ¬«¼»∞εΓÑp Ç »pÑñ»«½áúáÑΓ
- »ÑpÑß佬π óΓ«p«ú« íá⌐Γá ß««íΘÑ¡¿∩ ó ¬«¼»∞εΓÑp é, ó Γ« ópѼ∩, ¬á¬
- ¬«¼»∞εΓÑp é óδ»«½¡∩ÑΓ τΓÑ¡¿Ñ ¿¡Σ«p¼áµ¿¿ ¿º pÑú¿ßΓpá óó«ñá ñá¡¡δσ,
- Γ« íπñÑΓ ºápÑú¿ßΓp¿p«óá¡á «Φ¿í¬á "»ÑpÑ»«½¡Ñ¡¿Ñ pÑú¿ßΓpá" (oberrun
- error). ÄΦ¿í¬á φΓ«ú« Γ¿»á íπñÑΓ Γá¬ªÑ ºápÑú¿ßΓp¿p«óá¡á ñáªÑ, Ñß½¿
- ¬«¼»∞εΓÑp é í«½ÑÑ »p«¿ºó«ñ¿Γѽ∞¡δ⌐ τѼ ¬«¼»∞εΓÑp Ç, ¡« »p«úpἡ«Ñ
- «íÑß»ÑτÑ¡¿Ñ ¬«¼»∞εΓÑpá é ¼Ñ¡ÑÑ pÑá¬Γ¿ó¡«.
-
- ¥Γá »p«í½Ñ¼á 󫺡¿¬áÑΓ »«Γ«¼π, τΓ« ΦΓδp¿ 6, 8 ¿ 20 ß«Ññ¿¡Ñ¡δ
- ¿ »«pΓ-¿ßΓ«τ¡¿¬ ßτ¿ΓáÑΓ, τΓ« »«pΓ-»p¿Ñ¼¡¿¬ óßÑúñá ú«Γ«ó ¬ »p¿Ñ¼π
- ñá¡¡δσ. è«p«τÑ, óδ ßἿ ó¿ñ¿ΓÑ, τΓ« φëà »πΓ∞ pÑΦÑ¡¿∩ »p«í½Ñ¼
- ∩ó½∩ÑΓß∩ ñ«ó«½∞¡« ß½«ª¡δ¼.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 9 --
-
-
- äÄæÆôÅ è ÅÄæïàäÄéÇÆàï£ìÄîô ÅÄÉÆô èÄîÅ£₧ÆàÉÇ
- ùàÉàç BIOS
- -----------------------------------------------------------------
-
- è »«ß½Ññ«óáΓѽ∞¡«¼π »«pΓ𠬫¼»∞εΓÑp«ó ßѼÑ⌐ßΓóá PC, á ΓᬪÑ
- ß«ó¼ÑßΓ¿¼δσ ß ¡¿¼¿ ¼«ñѽÑ⌐ ¼«ª¡« »«½πτ¿Γ∞ ñ«ßΓπ» ¡Ñ»«ßpÑñßΓóÑ¡¡«
- ¿º DOS τÑpѺ Åçô-BIOS ¿½¿ ó «íσ«ñ DOS ¿ BIOS, ¿ß»«½∞ºπ∩
- ¡Ñ»«ßpÑñßΓóÑ¡¡«Ñ π»páó½Ñ¡¿Ñ á»»ápáΓ¡δ¼¿ ßpÑñßΓóἿ. ä«ßΓπ» ¬
- »«ß½Ññ«óáΓѽ∞¡«¼π »«pΓπ τÑpѺ DOS ¡Ñ «τÑ¡∞ σ«p«Φá∩ ¿ñÑ∩ »«Γ«¼π,
- τΓ« DOS ¡Ñ »«ºó«½∩ÑΓ «púá¡¿º«óáΓ∞ «ípáΓ¡«⌐ ßó∩º¿ ß
- »«ß½Ññ«óáΓѽ∞¡δ¼ »«pΓ«¼ ñ½∩ á¡á½¿ºá Ñú« ΓѬπΘÑú« ß«ßΓ«∩¡¿∩ ¿
- «púá¡¿ºπÑΓ ½¿Φ∞ ߽ѻ«Ñ τΓÑ¡¿Ñ ¿ ºá»¿ß∞ ñá¡¡δσ ó »«pΓ. è Γ«¼π ªÑ
- ¡ÑΓ ó«º¼«ª¡«ßΓ¿ ¿ß»«½∞º«óáΓ∞ ß¿ßΓѼπ »pÑpδóá¡¿⌐ DOS. ìÑß¼«Γp∩ ¡á
- Γ«, τΓ« ó »pÑñδñπΘÑ⌐ ú½áóÑ íδ½á páßß¼«ΓpÑ¡á 󫺼«ª¡«ßΓ∞ »p∩¼«ú«
- á»»ápáΓ¡«ú« π»páó½Ñ¡¿∩ ß¿ßΓѼ¡δ¼¿ pÑßπpßἿ, φëà ¼ÑΓ«ñ ¡Ñ
- ∩ó½∩ÑΓß∩ »p¿Ñ¼½Ñ¼δ¼ ñ½∩ páí«Γδ ß »«ß½Ññ«óáΓѽ∞¡δ¼ »«pΓ«¼ ó ßó∩º¿
- ß ΓѼ, τΓ« ¡á¿í«½∞Φá∩ »p«¿ºó«ñ¿Γѽ∞¡«ßΓ∞ «ípáí«Γ¬¿ »«pΓá »p¿
- ¿ß»«½∞º«óá¡¿¿ φΓ«ú« ¼ÑΓ«ñá ¼«ªÑΓ íδΓ∞ ñ«ßΓ¿ú¡πΓá ½¿Φ∞ ºá ßτÑΓ
- »pÑpδóá¡¿⌐ Åçô-BIOS.
-
- ä«ßΓπ» ¿ «ípáí«Γ¬π »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá »«ññÑpª¿óáεΓ
- τÑΓδpÑ ß»Ñµ¿á½∞¡δÑ πΓ¿½¿Γδ Åçô-BIOS. Äípáí«Γ¬á »«ß½Ññ«óáΓѽ∞¡«ú«
- »«pΓá «ßπΘÑßΓó½∩ÑΓß∩ ¿¼¿ ß »«¼«Θ∞ε »pÑpδóá¡¿∩ 14H. ÉáºíÑpѼ
- »«ñp«í¡ÑÑ φëà ¼ÑΓ«ñ.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 10 --
-
-
- êìêûêÇïêçÇûêƒ ÅÄÉÆÇ
- -----------------------------------------------------------------
-
- ÅÑpÑñ ¿ß»«½∞º«ó᡿Ѽ »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá óδ 󫺼«ª¡«
- ºáσ«Γ¿ΓÑ πßΓá¡«ó¿Γ∞ Ñú« ¡áτá½∞¡«Ñ ß«ßΓ«∩¡¿Ñ, «Γ½¿τáεΘÑÑß∩ «Γ
- »p¿¡∩Γ«ú« »« π¼«½τá¡¿ε, ¿½¿, ñpπú¿¼¿ ß½«óἿ, ¿¡¿µ¿á½¿º¿p«óáΓ∞
- »«pΓ. (Å« π¼«½τá¡¿ε, »Ñpóδ⌐ »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ ¿¼ÑÑΓ ß½ÑñπεΘ¿Ñ
- σápá¬ΓÑp¿ßΓ¿¬¿: ߬«p«ßΓ∞ «í¼Ñ¡á - 1200 í«ñ, »p«óÑp¬á ¡á τÑΓ¡«ßΓ∞,
- ßѼ∞ í¿Γ ñá¡¡δσ ¿ «ñ¿¡ ºáóÑpΦáεΘ¿⌐ í¿Γ). ÅpÑpδóá¡¿Ñ 14ì, πΓ¿½¿Γá
- 0, ¿ß»«½∞ºπÑΓß∩ ñ½∩ ¿¡¿µ¿á½¿ºáµ¿¿ »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá.
- æ«ó¼ÑßΓ¡« ß ñpπú¿¼¿ »pÑpδóá¡¿∩¼¿ BIOS pÑú¿ßΓp Çì ¿ß»«½∞ºπÑΓß∩ ñ½∩
- σpá¡Ñ¡¿∩ ¡«¼Ñpá πΓ¿½¿Γδ. ÉÑú¿ßΓp ÇL ¿ß»«½∞ºπÑΓß∩ ñ½∩ σpá¡Ñ¡¿∩
- »ápá¼ÑΓp«ó ¿¡¿µ¿á½¿ºáµ¿¿, ¬«Γ«pδÑ ¬«ñ¿pπεΓß∩ ó «ñ¡«¼ íá⌐ΓÑ ó
- ß½ÑñπεΘѼ »«p∩ñ¬Ñ:
-
- ¡«¼Ñp í¿Γá: 7 6 5 4 3 2 1 0
- ──┬── ─┬─ ┬ ─┬─
- │ │ │ │
- ߬«p«ßΓ∞ »ÑpÑñáτ¿ (í«ñ) ─────────────┘ │ │ │
- ¬«¡Γp«½∞ τÑΓ¡«ßΓ¿ ──────────────────┘ │ │
- ¬«½¿τÑßΓó« ºáóÑpΦáεΘ¿σ í¿Γ«ó ───────────────┘ │
- ¬«½¿τÑßΓó« í¿Γ«ó ñá¡¡δσ ────────────────────────┘
-
-
- 欫p«ßΓ∞ »ÑpÑñáτ¿ ñá¡¡δσ ¬«ñ¿pπÑΓß∩ ó ß««ΓóÑΓßΓó¿¿ ß
- Γáí½¿µÑ⌐ 6-1. è«¡Γp«½∞ τÑΓ¡«ßΓ¿ ¬«ñ¿pπÑΓß∩ ó ß««ΓóÑΓßΓó¿¿ ß
- Γáí½¿µÑ⌐ 6-2.
-
-
- Æáí½¿µá 6-1
- -----------------------------------------------------------------
- è«ñ¿p«óá¡¿Ñ ß¬«p«ßΓ¿ »ÑpÑñáτ¿ ó í¿Γáσ 7, 6 ¿ 5
- íá⌐Γá ¿¡¿µ¿á½¿ºáµ¿¿ »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá.
-
- 欫p«ßΓ∞ ū߽Ññ«óáΓѽ∞¡«ßΓ∞ í¿Γ
- ──────── ──────────────────────
- 9600 1 1 1
- 4800 1 1 0
- 2400 1 0 1
- 1200 1 0 0
- 600 0 1 1
- 300 0 1 0
- 150 0 0 1
- 110 0 0 0
- -----------------------------------------------------------------
-
- ù¿ß½« ºáóÑpΦáεΘ¿σ í¿Γ«ó «»pÑñѽ∩ÑΓß∩ º¡áτÑ¡¿Ñ¼ óΓ«α«ú«
- αáºα∩ñá íá⌐Γá ¿¡¿µ¿á½¿ºáµ¿¿ »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá. àß½¿
- º¡áτÑ¡¿Ñ φΓ«ú« í¿Γá páó¡« 1, Γ« ¿ß»«½∞ºπεΓß∩ ñóá ºáóÑpΦáεΘ¿σ
- í¿Γá; ó »p«Γ¿ó¡«¼ ß½πτáÑ ¿ß»«½∞ºπÑΓß∩ «ñ¿¡ ºáóÑpΦáεΘ¿⌐ í¿Γ. é
- ¬«¡Ñτ¡«¼ ¿Γ«úÑ τ¿ß½« í¿Γ«ó ñá¡¡δσ ºáñáÑΓß∩ º¡áτÑ¡¿Ñ¼ í¿Γ ó »Ñpó«¼
- ¿ ¡π½Ñó«¼ páºp∩ñáσ íá⌐Γá ¿¡¿µ¿á½¿ºáµ¿¿. êº τÑΓδpÑσ º¡áτÑ¡¿⌐,
- ¬«Γ«pδÑ ¼«úπΓ πßΓá¡áó½¿óáΓ∞ß∩ »«½∞º«óáΓѽѼ ó íá⌐ΓÑ ¿¡¿µ¿á½¿ºáµ¿¿
- ñ½∩ π¬áºá¡¿∩ τ¿ß½á í¿Γ«ó ñá¡¡δσ, ñ«»πßΓ¿¼δ¼¿ ∩ó½∩εΓß∩ ½¿Φ∞ ñóá.
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 11 --
-
-
- àß½¿ í¿Γδ ó »Ñpó«¼ ¿ ¡π½Ñó«¼ páºp∩ñáσ íá⌐Γá ¿¡¿µ¿á½¿ºáµ¿¿
- «ípáºπεΓ »«ß½Ññ«óáΓѽ∞¡«ßΓ∞ "1 0", Γ« ñ½∩ »ÑpÑñáτ¿ ñá¡¡δσ
- ¿ß»«½∞ºπÑΓß∩ ßѼ∞ í¿Γ. àß½¿ í¿Γδ ó φΓ¿σ páºp∩ñáσ «ípáºπεΓ
- »«ß½Ññ«óáΓѽ∞¡«ßΓ∞ "1 1", Γ« ¿ß»«½∞ºπÑΓß∩ ó«ßѼ∞ í¿Γ ñá¡¡δσ.
-
-
- Æáí½¿µá 6-2
- -----------------------------------------------------------------
- è«ñ¿p«óá¡¿Ñ τÑΓ¡«ßΓ¿ ó í¿Γáσ 4 ¿ 3
- íá⌐Γá ¿¡¿µ¿á½¿ºáµ¿¿ »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá
-
- é¿ñ ¬«¡Γp«½∩ ū߽Ññ«óáΓѽ∞¡«ßΓ∞ í¿Γ
- ──────────── ──────────────────────
- ¬«¡Γp«½∞ «Γ¼Ñ¡Ñ¡ 0 0 ¿½¿ 1 0
- »p«óÑp¬á ¡á ¡ÑτÑΓ¡«ßΓ∞ 0 1
- »p«óÑp¬á ¡á τÑΓ¡«ßΓ∞ 1 1
- -----------------------------------------------------------------
-
- ìá»p¿¼Ñp, Ñß½¿ óδ σ«Γ¿ΓÑ πßΓá¡«ó¿Γ∞ ߬«p«ßΓ∞ »ÑpÑñáτ¿ ñá¡¡δσ
- ñ½∩ »«pΓá 9600 í«ñ, »p«óÑp¬π ¡á τÑΓ¡«ßΓ∞, «ñ¿¡ ºáóÑpΦáεΘ¿⌐ í¿Γ ¿
- ó«ßѼ∞ í¿Γ ñ½∩ ñá¡¡δσ, óδ ñ«½ª¡δ πßΓá¡«ó¿Γ∞ ó¿ñ íá⌐Γá
- ¿¡¿µ¿á½¿ºáµ¿¿ á¡á½«ú¿τ¡« »p¿óÑñÑ¡¡«¼π ¡¿ªÑ. é ñÑß∩Γ¿τ¡«¼
- »pÑñßΓáó½Ñ¡¿¿ º¡áτÑ¡¿Ñ íá⌐Γá ¿¡¿µ¿á½¿ºáµ¿¿ páó¡« 251.
-
- 1 1 1 1 1 0 1 1
- ───┬─── ─┬─ ┬ ─┬─
- ߬«p«ßΓ∞ »ÑpÑñáτ¿ (í«ñ) ─────┘ │ │ │
- ó¿ñ ¬«¡Γp«½∩ τÑΓ¡«ßΓ¿ ────────────┘ │ │
- ¬«½¿τÑßΓó« ºáóÑpΦáεΘ¿σ í¿Γ«ó ───────────┘ │
- ¬«½¿τÑßΓó« í¿Γ«ó ñá¡¡δσ ────────────────────┘
-
- æΓá¡ñápΓ PC »pÑñπß¼áΓp¿óáÑΓ ¡á½¿τ¿Ñ ñ« ßѼ¿ »«ß½Ññ«óáΓѽ∞¡δσ
- »«pΓ«ó (ó ¡«óδσ Γ¿»áσ ¼áΦ¿¡ ¿σ º¡áτ¿Γѽ∞¡« í«½∞ΦÑ). ä½∩
- ߻ѵ¿Σ¿¬áµ¿¿ ¡«¼Ñpá »«pΓá ¿ß»«½∞ºπÑΓß∩ pÑú¿ßΓp DX. ÅÑpóδ⌐
- »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ ¿¼ÑÑΓ ¡«¼Ñp 0, óΓ«p«⌐ - 1 ¿ Γ. ñ. öπ¡¬µ¿∩,
- »pÑñßΓáó½Ñ¡¡á∩ ¡¿ªÑ, ¿¼ÑεΘá∩ ¿¼∩ int_port(), ¿ß»«½∞ºπÑΓß∩ ñ½∩
- ¿¡¿µ¿á½¿ºáµ¿¿ º¡áτÑ¡¿⌐ pẽ¿τ¡δσ »«pΓ«ó ß¿ßΓѼδ.
-
- /* ê¡¿µ¿á½¿ºáµ¿∩ »«αΓá */
- void port_init(port, code)
- int port;
- unsigned char code;
-
- {
- union REGS r;
-
- r.x.dx = port; /* »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ */
- r.h.ah = 0; /* Σπ¡¬µ¿∩ ¿¡¿µ¿á½¿ºáµ¿¿ »«pΓá */
- r.h.al = code; /* ¬«ñ ¿¡¿µ¿á½¿ºáµ¿¿ - ß¼. ΓѬßΓ */
- int86(0x14, &r, &r);
- }
-
-
- ¥Γá Σπ¡¬µ¿∩ ¿ß»«½∞ºπÑΓ Σπ¡¬µ¿ε int86(), »«ññÑpª¿óáѼπε
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 12 --
-
-
- í«½∞Φ¿¡ßΓó«¼ ¬«¼»¿½∩Γ«p«ó, ó¬½ετá∩ Æπαí« æ¿ ¿ MicroSoft C. àß½¿
- óδ ¿ß»«½∞ºπÑΓÑ ¬«¼»¿½∩Γ«p, úñÑ int86() ¡Ñ «»pÑñѽѡá, Γ« ó¼ÑßΓ«
- ¡ÑÑ ¼«ªÑΓ íδΓ∞ óóÑñÑ¡« ¡ÑτΓ« (Ñß½¿ »«½∞º«óáΓѽ∞ ßá¼ ¡Ñ «»pÑñѽ¿½
- φΓπ Σπ¡¬µ¿ε), τΓ« ¼«ªÑΓ »p¿óÑßΓ¿ ¬ «Φ¿í¬Ñ. óδ ¼«ªÑΓÑ páºpáí«ΓáΓ∞
- ßó«ε ߻ѵ¿á½∞¡πε Σπ¡¬µ¿ε ¿¡¿µ¿á½¿ºáµ¿¿ »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá.
- (Æá¬ ó Æπαí« æ¿ ÑßΓ∞ Σπ¡¬µ¿∩ bioscom(), »«ºó«½∩εΘá∩
- ¿¡¿µ¿á½¿º¿p«óáΓ∞ »«pΓ).
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 13 --
-
-
- ÅàÉàäÇùÇ üÇëÆÄé
- -----------------------------------------------------------------
-
- ÅpÑpδóá¡¿Ñ BIOS 14H, πΓ¿½¿Γá 1 ¿ß»«½∞ºπÑΓß∩ ñ½∩ »ÑpÑñáτ¿
- «ñ¡«ú« íá⌐Γá ¿¡Σ«p¼áµ¿¿ τÑpѺ »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ,
- ߻ѵ¿Σ¿µ¿p«óá¡¡δ⌐ ß«ñÑpª¿¼δ¼ pÑú¿ßΓpá DX. ÅÑpÑßδ½áѼδ⌐ íá⌐Γ
- ñ«½ªÑ¡ ß«ñÑpªáΓ∞ß∩ ó pÑú¿ßΓpÑ AL. æ«ßΓ«∩¡¿Ñ »p«µÑßßá »ÑpÑñáτ¿
- ó«ºópáΘáÑΓß∩ ó pÑú¿ßΓp AH. öπ¡¬µ¿∩ sport() , »pÑñßΓáó½Ñ¡¡á∩ ¡¿ªÑ,
- »ÑpÑñáÑΓ «ñ¿¡ íá⌐Γ ¿º ߻ѵ¿Σ¿µ¿p«óá¡¡«ú« »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá.
-
- /* ÅÑpÑñáτá ß¿¼ó«½á ¿º »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá */
- void sport(port, c)
- int port; /* »«pΓ óó«ñá/óδó«ñá */
- char c; /* »ÑpÑñáóáѼδ⌐ ß¿¼ó«½ */
- {
- union REGS r;
- r.x.dx = port; /* »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ */
- r.h.al = c; /* »ÑpÑñáóáѼδ⌐ ß¿¼ó«½ */
- r.h.ah = 1; /* »ÑpÑß佬á ß¿¼ó«½á Σπ¡¬µ¿¿ */
- int86(0x14, &r, &r);
- if(r.h.ah & 128) { /* ¬«¡Γp«½∞ 7-ú« í¿Γá */
- printf("«í¡ápπªÑ¡á «Φ¿í¬á »ÑpÑñáτ¿ ó ");
- printf("»«ß½Ññ«óáΓѽ∞¡«¼ »«pΓπ");
- exit(1);
- }
- }
-
- àß½¿ í¿Γ 7 pÑú¿ßΓpá Çì »«½πτ¿½ º¡áτÑ¡¿Ñ »«ß½Ñ óδ»«½¡Ñ¡¿∩
- »pÑpδóá¡¿∩ BIOS, Γ« pÑú¿ßΓp¿pπÑΓß∩ «Φ¿í¬á »ÑpÑñáτ¿ ñá¡¡δσ. ä½∩
- «»pÑñѽѡ¿∩ »p¿τ¿¡δ «Φ¿í¬¿ óδ ñ«½ª¡δ ßτ¿ΓáΓ∞ ß«ßΓ«∩¡¿Ñ »«pΓá; ¬á¬
- φΓ« ßñѽáΓ∞ «íßπªñáÑΓß∩ ¡¿ªÑ. ìÑß¼«Γp∩ ¡á Γ«, τΓ« Σπ¡¬µ¿∩ sport()
- »p¿ «í¡ápπªÑ¡¿¿ «Φ¿í¬¿ »pѬpáΘáÑΓ ßó«ε páí«Γπ, óδ ¼«ªÑΓÑ
- ß«σpá¡¿Γ∞ ¬«ñ «Φ¿í¬¿ ó π»páó½∩εΘÑ⌐ »p«úpá¼¼Ñ, á ºáΓѼ, «»pÑñѽ¿ó
- Γ¿» «Φ¿í¬¿, »pÑñπß¼«ΓpÑΓ∞ «»pÑñѽѡ¡δÑ ñÑ⌐ßΓó¿∩ »« ÑÑ «ípáí«Γ¬Ñ.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 14 --
-
-
- èÄìÆÉÄï£ æÄæÆÄƒìêƒ ÅÄÉÆÇ
- -----------------------------------------------------------------
-
- ÅpÑpδóá¡¿Ñ BIOS 14H, πΓ¿½¿Γá 3 ¿ß»«½∞ºπÑΓß∩ ñ½∩ ¬«¡Γp«½∩
- ß«ßΓ«∩¡¿∩ »«pΓá. ôΓ¿½¿Γá «púá¡¿ºπÑΓ ¬«¡Γp«½∞ ß«ßΓ«∩¡¿∩ »«pΓá,
- ߻ѵ¿Σ¿µ¿p«óá¡¡«ú« ß«ñÑpª¿¼δ¼ pÑú¿ßΓpá DX. Å«ß½Ñ ó«ºópáΓá ¿º
- ß«ßΓ«∩¡¿∩, «»pÑñѽ∩Ñ¼δ¼ »pÑpδó᡿Ѽ, pÑú¿ßΓpδ Çì ¿ AL íπñπΓ
- ß«ñÑpªáΓ∞ º¡áτÑ¡¿∩, «»pÑñѽ∩εΘ¿Ñ ó ß««ΓóÑΓßΓó¿¿ ß Æáí½¿µÑ⌐ 6-3
- ΓѬπΘÑÑ ß«ßΓ«∩¡¿Ñ »«pΓá »«ß½Ñ óδ»«½¡Ñ¡¿∩ »pÑpδóá¡¿∩ BIOS.
-
- Æáí½¿µá 6-3
- -----------------------------------------------------------------
- üá⌐Γδ ß«ßΓ«∩¡¿∩ »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá
- -----------------------------------------------------------------
- æ«ßΓ«∩¡¿Ñ ¬á¡á½á ßó∩º¿ ( Çì )
- ç¡áτÑ¡¿Ñ, πßΓá¡áó½¿óáεΘÑÑ í¿Γ ü¿Γ
-
- â«Γ«ó¡«ßΓ∞ ñá¡¡δσ 0
- ÄΦ¿í¬á »ÑpÑ»«½¡Ñ¡¿∩ 1
- ÄΦ¿í¬á ¬«¡Γp«½∩ τÑΓ¡«ßΓ¿ 2
- ÄΦ¿í¬á ¬«ñ¿p«óá¡¿∩ 3
- ÄΦ¿í¬á »p¿ ¿ñÑ¡Γ¿Σ¿¬áµ¿¿ »pÑpδóá¡¿∩ 4
- ÉÑú¿ßΓp ¡á¬«»½Ñ¡¿∩ »ÑpÑñáóáѼδσ ñá¡¡δσ 5
- ÉÑú¿ßΓp ßñó¿úá »ÑpÑñáτ¿ »πßΓ 6
- éδσ«ñ ºá ñ«»πßΓ¿¼δ⌐ ¿¡ΓÑpóá½ ópѼѡ¿ 7
-
-
-
- æ«ßΓ«∩¡¿Ñ ¼«ñѼá ( AL )
- ç¡áτÑ¡¿Ñ, πßΓá¡áó½¿óáεΘÑÑ í¿Γ ü¿Γ
-
- ê߬áªÑ¡¿Ñ ó «τ¿ßΓ¬Ñ-ñ½∩-»«ß佬¿ 0
- ê߬áªÑ¡¿Ñ ó ¡áí«pÑ-ñá¡¡δσ-ú«Γ«ó 1
- Äí¡ápπªÑ¡ ºáñ¡¿⌐ Σp«¡Γ ¬«½∞µÑó«ú« ¿¼»π½∞ßá 2
- ê߬áªÑ¡¿Ñ ß¿ú¡á½á ó ¬á¡á½Ñ ßó∩º¿ 3
- Äτ¿ßΓ¬á-ñ½∩-»«ß佬¿ 4
- ìáí«p-ñá¡¡δσ-ú«Γ«ó 5
- Åp¿º¡á¬ ¬«½∞µá 6
- çáΣ¿¬ß¿p«óá¡ ß¿ú¡á½ «Γ ¬á¡á½á ßó∩º¿ 7
- -----------------------------------------------------------------
-
- èᬠóδ ¼«ªÑΓÑ ó¿ñÑΓ∞, ¿º ¼¡«ú««ípế∩ pẽ¿τ¡δσ ß«ßΓ«∩¡¿⌐,
- á¡á½¿º¿pπѼδσ »p¿ ¿ß»«½∞º«óá¡¿¿ ¼«ñѼá, ó ß½πτáÑ «íÑß»ÑτÑ¡¿∩
- ßó∩º¿ »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá ß ¬á¬¿¼-½¿í« ¿¡δ¼ πßΓp«⌐ßΓó«¼,
- ¿ß»«½∞ºπεΓß∩ ½¿Φ∞ ¡á¿í«½ÑÑ ó᪡δÑ, á ¡Ñ óÑß∞ »pÑñßΓáó½Ñ¡¡δ⌐ ó
- Æáí½¿µÑ 6-3 ¡áí«p ß«ßΓ«∩¡¿⌐. Äñ¡á¬«, «ñ¡« ¿º ß«ßΓ«∩¡¿⌐ -
- "ú«Γ«ó¡«ßΓ∞ ñá¡¡δσ" ∩ó½∩ÑΓß∩ τpѺóδτá⌐¡« ó᪡δ¼. ǡ὿º¿pπ∩
- »p«µÑßß »ÑpÑñáτ¿ ñá¡¡δσ ¡á 󫺡¿¬¡«óÑ¡¿Ñ φΓ«ú« ß«ßΓ«∩¡¿∩, óδ
- ¼«ªÑΓÑ «»pÑñѽ¿Γ∞, ¬á¬¿Ñ ¬«¡¬pÑΓ¡« íá⌐Γδ ñá¡¡δσ í뫨 »«½πτÑ¡δ
- »«pΓ«¼ ¿ ú«Γ«óδ ñ½∩ τΓÑ¡¿∩. öπ¡¬µ¿∩ rport() ¿ß»«½∞ºπÑΓ ñá¡¡δÑ,
-
- ßτ¿ΓδóáѼδÑ Ñε ß »«pΓá. ìá »p¿¼ÑpÑ φΓ«⌐ Σπ¡¬µ¿¿ »«¬áºá¡«, ¬á¬¿¼
- «ípẫ¼ ¿ß»«½∞ºπÑΓß∩ 󫺼«ª¡«ßΓ∞ á¡á½¿ºá ß«ßΓ«∩¡¿∩ "ú«Γ«ó¡«ßΓ∞
- ñá¡¡δσ". êΓá¬, »ÑpÑ⌐ñѼ ¬ ß½ÑñπεΘѼπ páºñѽπ ú½áóδ.
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 15 --
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 16 --
-
-
- ÅÉêàî üÇëÆÄé
- -----------------------------------------------------------------
-
- ÅpÑpδóá¡¿Ñ BIOS 14H, πΓ¿½¿Γá 3 ¿ß»«½∞ºπÑΓß∩ ñ½∩ τΓÑ¡¿∩
- íá⌐Γ«ó ¿º »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá. 쫼Ñp »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá
- »pÑñóáp¿Γѽ∞¡« ߻ѵ¿Σ¿µ¿pπÑΓß∩ ß«ñÑpª¿¼δ¼ pÑú¿ßΓpá DX. ū߽Ñ
- óδσ«ñá ¿º ß«ßΓ«∩¡¿∩, «»pÑñѽ∩Ѽ«ú« »pÑpδó᡿Ѽ BIOS, «τÑpÑñ¡«⌐
- ß¿¼ó«½ ßτ¿ΓδóáÑΓß∩ ó pÑú¿ßΓp AL. Å«ß½Ñ »ÑpÑñáτ¿ ß¿¼ó«½á ¿
- ßτ¿Γδóá¡¿∩ Ñú« ó pÑú¿ßΓp AL í¿Γ 7 pÑú¿ßΓpá Aì ß¿ú¡á½¿º¿pπÑΓ «
- pѺπ½∞ΓáΓÑ óδ»«½¡Ñ¡¿∩ «»Ñpᵿ¿ »«½πτÑ¡¿∩-τΓÑ¡¿∩ ß¿¼ó«½á («Φ¿í¬á
- ¿½¿ ¡«p¼á).
-
- öπ¡¬µ¿∩ rport(), »pÑñßΓáó½Ñ¡¡á∩ ¡¿ªÑ, óδ»«½¡∩ÑΓ τΓÑ¡¿Ñ íá⌐Γá
- ¿º ߻ѵ¿Σ¿µ¿p«óá¡¡«ú« »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá.
-
-
- /* ùΓÑ¡¿Ñ ß¿¼ó«½á ¿º »«pΓá */
- rport(port)
- int port; /* »«pΓ óó«ñá/óδó«ñá */
- {
- union REGS r;
- /* Ī¿ñá¡¿Ñ »p¿σ«ñá ß¿¼ó«½á */
- while(!(check_stat(PORT)&256))
- if(kbhit()) { /* óδσ«ñ »« »pÑpδóá¡¿ε «Γ ¬½áó¿áΓπpδ */
- getch();
- exit(1);
- }
- r.x.dx = port; /* »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ */
- r.h.ah = 2; /* ¡«¼Ñp Σπ¡¬µ¿¿ τΓÑ¡¿∩ */
- int86(0x14, &r, &r);
- if(r.h.ah & 128)
- printf("ó »«ß½Ññ«óáΓѽ∞¡«¼ »«pΓπ «í¡ápπªÑ¡á «Φ¿í¬á τΓÑ¡¿∩");
- return r.h.al;
- }
-
-
- ÅpÑpδóá¡¿Ñ ñ½∩ τΓÑ¡¿∩ ñá¡¡δσ ¿º »«pΓá ¡Ñ ¿¡¿µ¿¿pπÑΓß∩
- ß¿ßΓѼ«⌐ ñ« ΓÑσ »«p, »«¬á «τÑpÑñ¡«⌐ íá⌐Γ ¡Ñ íπñÑΓ »«½πτÑ¡
-
- »«ß½Ññ«óáΓѽ∞¡δ¼ »«pΓ«¼, ¿ ¿¡¿µ¿¿pπÑΓß∩ ñ« Γ«ú«, ¬á¬ íá⌐Γ íπñÑΓ
- »«ΓÑp∩¡ pÑú¿ßΓp«¼. Å«φΓ«¼π ¡á¿í«½ÑÑ Γ¿»¿τ¡«⌐ «Φ¿í¬«⌐ »p¿ τΓÑ¡¿¿
- íá⌐Γá ∩ó½∩ÑΓß∩ «ΓßπΓßΓó¿Ñ ¬«¡Γá¬Γá ß ¬á¡á½«¼ ßó∩º¿, τΓ« »p¿ó«ñ¿Γ
- ¬ ºáó¿ßá¡¿ε ¬«¼»∞εΓÑpá. ä½∩ pÑΦÑ¡¿∩ φΓ«⌐ »p«í½Ñ¼δ Σπ¡¬µ¿∩ rport()
- á¡á½¿º¿pπÑΓ ß«ßΓ«∩¡¿Ñ ߻ѵ¿Σ¿µ¿p«óá¡¡«ú« »«pΓá, »p«óÑp∩∩ º¡áτÑ¡¿Ñ
- í¿Γá, ¿¡ñ¿µ¿pπεΘÑú« ú«Γ«ó¡«ßΓ∞ ñá¡¡δσ. é Γ« ªÑ ópѼ∩ Σπ¡¬µ¿∩
- kbhit() ¬«¡Γp«½¿pπÑΓ »«ßΓπ»½Ñ¡¿Ñ »pÑpδóá¡¿∩ «Γ ¬½áó¿áΓπpδ. àß½¿
- íδ½á ¡áªáΓá ¬½áó¿Φá, Γ« Σπ¡¬µ¿∩ rport() »pѬpáΘáÑΓ ßó«ε páí«Γπ.
- (óδ ¼«ªÑΓÑ »pÑñπß¼«ΓpÑΓ∞ ó p∩ñÑ ß½πτáÑó ó맮ó ¬á¬«⌐-½¿í« Σπ¡¬µ¿¿
- ñ½∩ «ípáí«Γ¬¿ Γᬫ⌐ ß¿Γπᵿ¿). êß»«½∞º«óá¡¿Ñ Σπ¡¬µ¿¿ kbhit()
- »«ºó«½∩ÑΓ »«½πτ¿Γ∞ 󫺼«ª¡«ßΓ∞ »pѬpáΘÑ¡¿∩ páí«Γδ Σπ¡¬µ¿¿ rport()
- ó ß½πτáÑ, Ñß½¿ »«½πτÑ¡¿Ñ ñá¡¡δσ »«pΓ«¼ ¡Ñ󫺼«ª¡« ¿, ó ßó«ε
- «τÑpÑñ∞, »pÑñ«ΓópáΓ¿Γ∞ ºáó¿ßá¡¿Ñ ¬«¼»∞εΓÑpá. èá¬ Γ«½∞¬« ñá¡¡δÑ
- »«½πτÑ¡δ, ¿¡¿µ¿¿pπÑΓß∩ »pÑpδóá¡¿Ñ 14ì, πΓ¿½¿Γá 2, ¿ «τÑpÑñ¡«⌐
- íá⌐Γ ßτ¿ΓδóáÑΓß∩ Σπ¡¬µ¿Ñ⌐ ¿º »«pΓá, »«ß½Ñ τÑú« á¡á½¿º¿pπÑΓß∩ í¿Γ
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 17 --
-
-
- 7 pÑú¿ßΓpá Çì ¡á »pÑñ¼ÑΓ pѺπ½∞ΓáΓá óδ»«½¡Ñ¡¿∩ «»Ñpᵿ¿ («Φ¿í¬á
- ¿½¿ ¡«p¼á). é ¬«¡Ñτ¡«¼ ¿Γ«úÑ, ßτ¿Γá¡¡δ⌐ íá⌐Γ ó«ºópáΘáÑΓß∩
- Σπ¡¬µ¿Ñ⌐ ó óδºδóáεΘπε »p«úpá¼¼π.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 18 --
-
-
- ÅàÉàäÇùÇ öÇëïÄé îàåäô èÄîÅ£₧ÆàÉÇîê
- -----------------------------------------------------------------
-
- æÑú«ñ¡∩ ¼¡«ú¿Ñ «púá¡¿ºáµ¿¿ ¿ τáßΓ¡δÑ ½¿µá ¿¼ÑεΓ ó ßó«Ñ¼
- páß»«p∩ªÑ¡¿¿ ¡Ñ߬«½∞¬« ¬«¼»∞εΓÑp«ó, »p¿τѼ τáßΓ« φΓ¿ ¬«¼»∞εΓÑpδ
- «¬áºδóáεΓß∩ pạδσ Γ¿»«ó ¿½¿ pạδσ ¼«ñѽÑ⌐, á Γá¬ªÑ ¿¼ÑεΓ
- ¡Ñß«ó¼ÑßΓ¿¼δÑ Σ«p¼áΓδ ñ¿ß¬«ó. Há»p¿¼Ñp 3.5 ñε⌐¼«óδÑ ñ¿ß¬ÑΓδ
- ß¿ßΓѼδ PS/2 ¡Ñß«ó¼ÑßΓ¿¼δ ß 5.5 ñε⌐¼«ó묨 ñ¿ß¬ÑΓἿ í«½ÑÑ pá¡¡¿σ
- ¼«ñѽÑ⌐ ¬«¼»∞εΓÑp«ó IBM - PC, XT, AT. Åp¿ ¿ß»«½∞º«óá¡¿¿ pẽ¿τ¡δσ
- ¬«¼»∞εΓÑp«ó í«½∞Φ«Ñ »pÑ¿¼πΘÑßΓó« ¼«ªÑΓ íδΓ∞ ñ«ßΓ¿ú¡πΓ« »p¿
- ß«Ññ¿¡Ñ¡¿¿ ¬«¼»∞εΓÑp«ó τÑpѺ ¿σ »«ß½Ññ«óáΓѽ∞¡δÑ »«pΓδ ß µÑ½∞ε
- ß«ó¼ÑßΓ¡«ú« ¿ß»«½∞º«óá¡¿∩ ¿¼¿ ¿¡Σ«p¼áµ¿¿ ¿/¿½¿ »p«úpá¼¼. é«
- ¼¡«ú¿σ ß½πτá∩σ ß«ºñá¡¿Ñ »p«úpá¼¼, «íÑß»Ñτ¿óáεΘ¿σ «í¼Ñ¡ Σá⌐½á¼¿
- ñ½∩ Γá¬¿σ ¬«¼»∞εΓÑp«ó τÑpѺ ¿σ »«ß½Ññ«óáΓѽ∞¡δÑ »«pΓδ, ∩ó½∩ÑΓß∩
- »p«í½Ñ¼áΓ¿τ¡δ¼.
- Äñ¡á¬« ßπΘÑßΓóπÑΓ ñ«ó«½∞¡« íδßΓp«ñÑ⌐ßΓóπεΘá∩ ¿ φΣΣÑ¬Γ¿ó¡á∩
- »p«úpá¼¼á »ÑpÑñáτ¿ Σá⌐½«ó. ¥Γá »p«úpá¼¼á »«ñp«í¡« páßß¼áΓp¿óáÑΓß∩
- ó φΓ«⌐ ú½áóÑ; «¡á «í½áñáÑΓ p∩ñ«¼ º¡áτ¿Γѽ∞¡δσ »pÑ¿¼πΘÑßΓó: «¡á
- páí«ΓáÑΓ ß ½εí묨 Γ¿»á¼¿ Σá⌐½«ó ¡á óßÑσ Γ¿»áσ ¬«¼»∞εΓÑp«ó,
- ¬«Γ«pδÑ ÑßΓÑßΓóÑ¡¡« «Γ½¿τáεΓß∩ ñpπú «Γ ñpπúá ßó«Ñ⌐
- »p«¿ºó«ñ¿Γѽ∞¡«ßΓ∞ε ¿, ßá¼«Ñ ú½áó¡«Ñ, ¡Ñ ¿ß»«½∞ºπεΓ á»»ápáΓ¡«ú«
- »«ñΓóÑpªñÑ¡¿∩ ßó∩º¿. ū߽Ññ¡∩∩ «ß«íÑ¡¡«ßΓ∞ »p«úpá¼¼δ »«ºó«½∩ÑΓ
- ¿ß»«½∞º«óáΓ∞ ΓpÑσª¿½∞¡δ⌐ ¬áíѽ∞. é ñ«íáó«¬ ¬« óßѼπ, »p«úpá¼¼á
- ¼«ªÑΓ páí«ΓáΓ∞ ñáªÑ Γ«úñá, ¬«úñá á»»ápáΓ¡«Ñ »«ñΓóÑpªñÑ¡¿Ñ ßó∩º¿ ó
- »p¿¡µ¿»Ñ ¡Ñ󫺼«ª¡« ¿ íÑß»«½Ñº¡«.
-
- ì« óßÑ páó¡« óδ ¼«ªÑΓÑ ¿ß»«½∞º«óáΓ∞ á»»ápáΓ¡«Ñ »«ñΓóÑpªñÑ¡¿Ñ
- ßó∩º¿ »«Γ«¼π, τΓ« φΓ« »«ºó«½∩ÑΓ ñ«ßΓ¿τ∞ í«½ÑÑ óδß«¬«ú« πp«ó¡∩
- »p«¿ºó«ñ¿Γѽ∞¡«ßΓ¿ ¿ ¡áñѪ¡«ßΓ¿ ¡ÑªÑ½¿ «púá¡¿ºáµ¿∩ óºá¿¼«ñÑ⌐ßΓó¿∩
- ¬«¼»∞εΓÑp«ó íѺ ¡Ñú«. ¥Γ« ßó∩ºá¡« ß ΓѼ, τΓ« ñ«ó«½∞¡« τáßΓ«
- úÑ¡Ñpᵿ∩ ߻ѵ¿á½∞¡δσ ß¿ú¡á½«ó »p«úpá¼¼«⌐ ºáΓpπñ¡Ñ¡á ¿ »p«úpá¼¼¡«
- pÑ὿º«óá¡¡δÑ ß¿ú¡á½δ τáßΓ« »pÑΓÑp»ÑóáεΓ ¿ß¬áªÑ¡¿∩, á ΓᬪÑ
- ºáτáßΓπε íÑß»«½Ñº¡δ ó««íΘÑ. ¥Γá ß¿Γπᵿ∩ (»p¿ «íΩÑñ¿¡Ñ¡¿¿
- ¬«¼»∞εΓÑp«ó) íπñÑΓ ßπΘÑßΓó«óáΓ∞ ÑΘÑ «τÑó¿ñ¡« ñ«ó«½∞¡« ñ«½ú«,
- ∩ó½∩∩ß∞ ó Γ« ªÑ ópѼ∩ ñ«ßΓáΓ«τ¡« «íΘÑ⌐.
-
- Å«ñ»p«úpá¼¼δ »ÑpÑñáτ¿ Σá⌐½«ó óδ»«½¡∩εΓ ßó«¿ Σπ¡¬µ¿¿,
- ¿ß»«½∞ºπ∩ »p«úpá¼¼¡«Ñ »«ñΓóÑpªñÑ¡¿Ñ ßó∩º¿, ¿ Σπ¡¬µ¿«¡¿pπεΓ
- Σá¬Γ¿τÑ߬¿ ó pẽ¿τ¡δσ ßpÑñáσ. Äñ¡á¬« ñ½∩ pÑΦÑ¡¿∩ ú½«íá½∞¡«⌐
- »p«í½Ñ¼δ ½πτΦÑ »«ªÑpΓó«óáΓ∞ »p«¿ºó«ñ¿Γѽ∞¡«ßΓ∞ε, πóѽ¿τ¿ó
- ¡áñѪ¡«ßΓ∞ ß¿ßΓѼδ.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 19 --
-
-
- ÅÉÄâÉÇîîìÄà ÅÄäÆéàÉåäàìêà æéƒçê
- -----------------------------------------------------------------
-
- è«úñá á»»ápáΓ¡«Ñ »«ñΓóÑpªñÑ¡¿Ñ ßó∩º¿ ¡Ñ󫺼«ª¡« ¿½¿
- íÑß»«½Ñº¡«, Ññ¿¡ßΓóÑ¡¡δ¼ ß»«ß«í«¼, »«ºó«½∩εΘ¿¼ ¿ºíѪáΓ∞ «Φ¿í«¬
- »ÑpÑ»«½¡Ñ¡¿∩ pÑú¿ßΓpá, ¬«Γ«pδÑ ¡Ñ ¼«úπΓ íδΓ∞ ºápÑú¿ßΓp¿«óá¡δ
- ¡Ñ»«ßpÑñßΓóÑ¡¡« ó« ópѼ∩ »ÑpÑñáτ¿ ñá¡¡δσ »« ¬á¡á½π ßó∩º¿,
- ∩ó½∩ÑΓß∩ óóÑñÑ¡¿Ñ »p«úpá¼¼¡«ú« »«ñΓóÑpªñÑ¡¿∩ ßó∩º¿. Åp«úpá¼¼¡«Ñ
- »«ñΓóÑpªñÑ¡¿Ñ ßó∩º¿ páí«ΓáÑΓ ß½ÑñπεΘ¿¼ «ípẫ¼:
- ¬«¼»∞εΓÑp-¿ßΓ«τ¡¿¬ »«ßδ½áÑΓ »Ñpóδ⌐ íá⌐Γ ¿ »ÑpÑσ«ñ¿Γ ó ß«ßΓ«∩¡¿Ñ
- «ª¿ñá¡¿∩ ó«ºópáΓá «Γ ¬«¼»∞εΓÑpá-»p¿Ñ¼¡¿¬á ¬ó¿Γ¿pπεΘÑú« íá⌐Γá
- (íá⌐Γá, »«ñΓóÑpªñáεΘÑú« »p¿¡∩Γ¿Ñ »pÑñδñπΘÑú« ß««íΘÑ¡¿∩). Åp¿
- »«½πτÑ¡¿¿ ¬ó¿Γ¿pπεΘÑú« íá⌐Γá ¬«¼»∞εΓÑp-¿ßΓ«τ¡¿¬ »«ßδ½áÑΓ
- ß½ÑñπεΘ¿⌐ íá⌐Γ ¿ ß¡«óá »ÑpÑσ«ñ¿Γ ó ß«ßΓ«∩¡¿Ñ «ª¿ñá¡¿∩
- ¬ó¿Γ¿pπεΘÑú« íá⌐Γá «Γ ¬«¼»∞εΓÑpá-»p¿Ñ¼¡¿¬á.
-
- ¥Γ«Γ »p«µÑßß »p«ñ«½ªáÑΓß∩ ñ« ΓÑσ »«p, »«¬á óÑß∞ Σá⌐½ µÑ½¿¬«¼
- ¡Ñ íπñÑΓ »ÑpÑñá¡. ì¿ªÑ »pÑñßΓáó½Ñ¡δ ó ΓÑp¼¿¡áσ »ßÑóñ«-æ¿
- »α«µÑñπpδ »ÑpÑñáτ¿ ¿ »p¿Ñ¼á ñá¡¡δσ.
-
-
- send()
- {
- while ( ÑßΓ∞ íá⌐Γδ ñ½∩ »ÑpÑñáτ¿ ){
- send( íá⌐Γ );
- wait();
- }
- }
- receive()
- {
- do {
- receive_byte();
- send( ¬ó¿Γ¿pπεΘ⌐ íá⌐Γ );
- } while( »«¬á óßÑ íá⌐Γδ ¡Ñ ßτ¿Γá¡δ );
- }
-
-
- Åp¿ φΓ«¼ »«ñσ«ñÑ »ÑpÑñáτá ñá¡¡δσ ¡Ñ ó맮óÑΓ ¡¿¬«úñá
- »ÑpÑ»«½¡Ñ¡¿∩ pÑú¿ßΓpá ó »«pΓÑ-»p¿Ñ¼¡¿¬Ñ ¡Ñºáó¿ß¿¼« «Γ Γ«ú«,
- ¡á߬«½∞¬« óѽ¿¬á pạ¿µá ó ߬«p«ßΓ¿ óδ»«½¡Ñ¡¿∩ «»Ñpᵿ⌐
- ¬«¼»∞εΓÑp«ó, ¼Ñªñ𠬫ëp묨 πßΓá¡«ó½Ñ¡á ßó∩º∞.
-
- Åp¿ φΓ«¼ Γ¿»Ñ »«ñΓóÑpªñÑ¡¿∩ ßó∩º¿ ¿¼ÑÑΓß∩ ½¿Φ∞ «ñ¿¡
- ¡Ññ«ßΓáΓ«¬ - ߬«p«ßΓ∞ »ÑpÑñáτ¿ ñá¡¡δσ »áñáÑΓ óñó«Ñ »« ßpáó¡Ñ¡¿ε ß
- ΓÑ«pÑΓ¿τÑ߬¿ 󫺼«ª¡«⌐. ¥Γ« «íΩ∩ß¡∩ÑΓß∩ ΓѼ, τΓ« »p¿ »ÑpÑñáτÑ
- «ñ¡«ú« íá⌐Γá ¿¡Σ«p¼áµ¿¿ Σá¬Γ¿τÑ߬¿ »α«¿ßσ«ñ¿Γ »ÑpÑñáτá ñóπσ íá⌐Γ
- (óß»«¼¡¿ΓÑ « ¬ó¿Γ¿pπεΘѼ íá⌐ΓÑ).
-
-
-
-
-
-
-
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 20 --
-
-
- æàî£ êïê éÄæàî£ üêÆ äÇìì¢ò
- -----------------------------------------------------------------
-
- àß½¿ óδ ß«í¿páÑΓÑß∞ «púá¡¿º«óáΓ∞ »ÑpÑñáτπ Γ«½∞¬« ΓѬßΓ«óδσ
- Σá⌐½«ó, Γ« óδ 󻫽¡Ñ ¼«ªÑΓÑ ¿ß»«½∞º«óáΓ∞ ½¿Φ∞ ßѼ∞ í¿Γ »«ñ ñá¡¡δÑ
- »« Γ«⌐ ½¿Φ∞ »p¿τ¿¡Ñ, τΓ« ¡¿ «ñ¡á íπ¬óá ¿½¿ ß¿¼ó«½ »π¡¬Γπᵿ¿ ¡Ñ
- ΓpÑíπÑΓ ñ½∩ ßó«Ñú« »pÑñßΓáó½Ñ¡¿∩ ó«ßѼ∞ í¿Γ. ÅÑpÑñáóá∩ Γ«½∞¬«
- ßѼ∞ í¿Γ, óδ ñáªÑ ¡Ñº¡áτ¿Γѽ∞¡« πóѽ¿τ¿ΓÑ ß¬«p«ßΓ∞ »ÑpÑñáτ¿
- Σá⌐½á. ì« ¬á¬ íδΓ∞, Ñß½¿ ¡Ñ«íσ«ñ¿¼« »ÑpÑñáΓ∞ ¡Ñ ΓѬßΓ«óδ⌐ Σá⌐½, á
- »p«úpá¼¼π?
-
- éßÑ Σá⌐½δ, ß«ñÑpªáΘ¿Ñ »p«úpá¼¼δ (óδ»«½¡∩ѼδÑ) ¿ ¡Ñ¬«Γ«pδÑ
- ó¿ñδ Σá⌐½«ó ñá¡¡δσ, ¿ß»«½∞ºπεΓ ó«ß∞¼¿í¿Γ«ó«Ñ »pÑñßΓáó½Ñ¡¿Ñ
- ñá¡¡δσ, Γ« ÑßΓ∞ óÑß∞ íá⌐Γ. Å« φΓ«⌐ »p¿τ¿¡Ñ ñ½∩ »ÑpÑñáτ¿ Σá⌐½á,
- ß«ñÑpªáΘÑú« óδ»«½¡∩Ѽπε »p«úpá¼¼π, »p«úpá¼¼á »ÑpÑñáτ¿ Σá⌐½«ó
- ñ«½ª¡á »ÑpÑñáóáΓ∞ óßÑ ó«ßѼ∞ í¿Γ. Äñ¡á¬« ßπΘÑßΓóπÑΓ ÑΘÑ «ñ¡á
- »p«í½Ñ¼á, 󫺡¿¬áεΘá∩ »p¿ »ÑpÑñáτÑ ñó«¿τ¡δσ Σá⌐½«ó: EOF (ß¿¼ó«½
- End-Of-File) ¡Ñ ¿ß»«½∞ºπeΓß∩ ñ½∩ ß¿ú¡á½¿ºáµ¿¿ «í «¬«¡τá¡¿¿
- Σá⌐½á. ä½∩ pÑΦÑ¡¿∩ φΓ«⌐ »p«í½Ñ¼δ τ¿ß½« íá⌐Γ«ó ó Σá⌐½Ñ ñ«½ª¡« íδΓ∞
- »ÑpÑñá¡« »«pΓπ-»p¿Ñ¼¡¿¬π ñ« »ÑpÑñáτ¿ óßÑú« Σá⌐½á.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 21 --
-
-
- ÅàÉàèÇùèÇ öÇëïÇ
- -----------------------------------------------------------------
-
- ÅÑpó«⌐ ¡Ñ«íσ«ñ¿¼«⌐ ¡á¼ »«ñ»p«úpá¼¼«⌐ ∩ó½∩ÑΓß∩ Σπ¡¬µ¿∩,
- «íÑß»Ñτ¿óáεΘá∩ »ÑpÑñáτπ Σá⌐½á τÑpѺ »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ. é
- «íΘѼ ß½πτáÑ φΓá Σπ¡¬µ¿∩ ñ«½ª¡á «Γ¬pδΓ∞ Σá⌐½, ¬«Γ«pδ⌐ íπñÑΓ
- »ÑpÑñá¡ ó ñpπú«⌐ ¬«¼»∞εΓÑp, »«ñßτ¿ΓáΓ∞ Ñú« ñ½¿¡π, »ÑpÑñáΓ∞ ó »«pΓ
- -»p¿Ñ¼¡¿¬ ñ½¿¡π »ÑpÑñáóáѼ«ú« Σá⌐½á ¿, ó ¬«¡µÑ ¬«¡µ«ó, »ÑpѬáτáΓ∞
- ßá¼ Σá⌐½. öπ¡¬µ¿∩ send_file(), »pÑñßΓáó½Ñ¡¡á∩ ¡¿ªÑ, ¬á¬ pẠ¿
- »pÑñ¡áº¡áτÑ¡á ñ½∩ pÑΦÑ¡¿∩ φΓ¿σ ºáñáτ.
-
-
- /* »ÑpѬáτ¬á ߻ѵ¿Σ¿µ¿p«óá¡¡«ú« Σá⌐½á */
- void send_file(fname)
- char *fname;
- {
- FILE *fp;
- char ch;
- union {
- char c[2];
- unsigned int count;
- } cnt;
-
- if(!(fp=fopen(fname,"rb"))) {
- printf("éσ«ñ¡«⌐ Σá⌐½ ¡Ñ ¼«ªÑΓ íδΓ∞ «Γ¬pδΓ\n");
- exit(1);
- }
-
- send_file_name(fname); /* »ÑpÑñáτá ¿¼Ñ¡¿ Σá⌐½á */
-
- wait(PORT); /* «ª¿ñá¡¿Ñ ¬ó¿Γ¿pπεΘÑú« íá⌐Γá */
-
- /* óδτ¿ß½Ñ¡¿Ñ pẼÑpá óδσ«ñ¡«ú« Σá⌐½á */
- cnt.count = filesize(fp);
- /* pẼÑp »«ß佬¿ */
- sport(PORT, cnt.c[0]);
- wait(PORT);
- sport(PORT, cnt.c[1]);
-
- do {
- ch = getc(fp);
- if(ferror(fp)) {
- printf(" «Φ¿í¬á τΓÑ¡¿∩ óδσ«ñ¡«ú« Σá⌐½á\n");
- break;
- }
-
- /* «ª¿ñá¡¿Ñ ú«Γ«ó¡«ßΓ¿ »«pΓá-»p¿Ñ¼¡¿¬á */
- if(!feof(fp)) {
- wait(PORT);
- sport(PORT, ch);
- }
- } while(!feof(fp));
- wait(PORT);/* «ª¿ñá¡¿Ñ »«ñΓóÑpªñÑ¡¿∩ »«½πτÑ¡¿∩ »«ß½Ññ¡Ñú« íá⌐Γá
- */
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 22 --
-
-
- fclose(fp);
- }
-
-
- öπ¡¬µ¿∩ send_file_name(), »pÑñßΓáó½Ñ¡¡á∩ ¡¿ªÑ, πßΓá¡áó½¿óáÑΓ
- ß««ΓóÑΓßΓó¿Ñ ¼Ñªñπ ¿¼Ñ¡Ñ¼ »p¿¡¿¼áѼ«ú« ¿ »ÑpÑñáóáѼ«ú« Σá⌐½«ó.
-
-
- /* ÅÑpѬáτ¬á ¿¼Ñ¡¿ Σá⌐½á */
- void send_file_name(f)
- char *f;
- {
- printf(" Ī¿ñá¡¿Ñ »ÑpÑñáτ¿... \n");
- do {
- sport(PORT, '?');
- } while(!kbhit() && !(check_stat(PORT)&256));
- if(kbhit()) {
- getch();
- exit(1);
- }
- wait(PORT); /* «ª¿ñá¡¿Ñ »«½πτÑ¡¿∩ ¬ó¿Γ¿pπεΘÑú« íá⌐Γá */
- printf("ÅÑpÑñá¡« %s\n\n",f);
-
- /* Σá¬Γ¿τÑ߬á∩ »ÑpÑñáτá ¿¼Ñ¡¿ Σá⌐½á */
- while(*f) {
- sport(PORT, *f++);
- wait(PORT); /* «ª¿ñá¡¿Ñ »«½πτÑ¡¿∩ ¬ó¿Γ¿pπεΘÑú« íá⌐Γá */
- }
- sport(PORT,'\0'); /* ß¿¼ó«½ ¬«¡µá ßΓp«¬¿ */
- }
-
-
- öπ¡¬µ¿∩ send_file_name() »pÑñ¡áº¡áτÑ¡á ñ½∩ pÑΦÑ¡¿∩ ñóπσ
- «ß¡«ó¡δσ ºáñáτ. é«-»Ñpóδσ, «¡á πßΓá¡áó½¿óáÑΓ ßó∩º∞ ß
- ¬«¼»∞εΓÑp«¼-»p¿Ñ¼¡¿¬«¼ »πΓѼ »ÑpÑñáτ¿ Ѽπ ¼áp¬Ñpá ó«»p«ßá ('?') ¿
- ñ«ª¿ñáÑΓß∩ «ΓóÑΓá «Γ ¡Ñú« ó ó¿ñÑ ¬ó¿Γ¿pπεΘÑú« íá⌐Γá. (é ¬áτÑßΓóÑ
- ¬ó¿Γ¿pπεΘÑú« ß¿¼ó«½á ¿ß»«½∞ºπÑΓß∩ Γ«τ¬á. Äñ¡á¬« óδ ¼«ªÑΓÑ »«
- ßó«Ñ¼π πß¼«ΓpÑ¡¿ε ¿ß»«½∞º«óáΓ∞ ñpπú«⌐ ß¿¼ó«½. Å«ß½Ñ Γ«ú«, ¬á¬
- ßó∩º∞ íπñÑΓ πßΓá¡«ó½Ñ¡á, «ßπΘÑßΓó½∩ÑΓß∩ »ÑpÑñáτá ¿¼Ñ¡¿ Σá⌐½á.
- çá¼ÑΓ∞ΓÑ, τΓ« φΓá Σπ¡¬µ¿∩ ºáóÑpΦáÑΓ áóáp¿⌐¡« ßó«ε páí«Γπ »p¿
- »«ßΓπ»½Ñ¡¿¿ »pÑpδóá¡¿∩ «Γ ¬½áó¿áΓπpδ.
-
- öπ¡¬µ¿∩ wait(), »pÑñßΓáó½Ñ¡¡á∩ ¡¿ªÑ, «ª¿ñáÑΓ ¬ó¿Γ¿p«óá¡¿∩ «Γ
- ¬«¼»∞εΓÑpá-»p¿Ñ¼¡¿¬á, pÑ὿ºπεΘÑú« »p«úpá¼¼¡«Ñ »«ñΓóÑpªñÑ¡¿Ñ
- ßó∩º¿.
-
-
- /* «ª¿ñá¡¿Ñ «ΓóÑΓá */
- void wait(port)
- int port;
- {
- if(rport(port)!='.') {
- printf("«Φ¿í¬á πßΓá¡«ó½Ñ¡¿∩ ßó∩º¿ \n");
- exit(1);
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 23 --
-
-
- }
- }
-
- Æá¬¿¼ «ípẫ¼, »p¿ «í¡ápπªÑ¡¿¿ «Φ¿í¬¿ φΓá Σπ¡¬µ¿∩ »pѬpáΘáÑΓ
- ßó«ε páí«Γπ. Äñ¡á¬« óδ ¼«ªÑΓÑ »pÑñπß¼«ΓpÑΓ∞ «ípáí«Γ¬π ñá¡¡«⌐
- ß¿Γπᵿ¿.
-
- öπ¡¬µ¿∩ filesize() ó«ºópáΘáÑΓ pẼÑp Σá⌐½á ó íá⌐Γáσ. àÑ
- ¿ß»«½∞º«óá¡¿Ñ ó«º¼«ª¡«, Ñß½¿ óáΦ ¬«¼»¿½∩Γ«p æ¿ »«ññÑpª¿óáÑΓ
- Σπ¡¬µ¿ε óδτ¿ß½Ñ¡¿∩ ñ½¿¡δ Σá⌐½á, ó »p«Γ¿ó¡«¼ ß½πτáÑ óδ ñ«½ª¡δ
- ºá¼Ñ¡¿Γ∞ φΓπ Σπ¡¬µ¿ε páºpáí«Γá¡¡«⌐ óἿ, ¡« óδ»«½¡∩εΘÑ⌐
- á¡á½«ú¿τ¡δÑ ñÑ⌐ßΓó¿∩. ÅÑpѼѡ¡á∩ cnt, óσ«ñ∩Θá∩ ó ß«ßΓáó ßΓpπ¬Γπpδ
- union, ß½πª¿Γ ñ½∩ σpá¡Ñ¡¿∩ ñóπσíá⌐Γ«ó«⌐ ñ½¿¡δ Σá⌐½á, ¡« óδ ñ«½ª¡δ
- »«¼¡¿Γ∞, τΓ« ºá Ññ¿¡¿µπ ópѼѡ¿ óδ ¼«ªÑΓÑ »ÑpÑß½áΓ∞ τÑpѺ
- »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ Γ«½∞¬« «ñ¿¡ íá⌐Γ.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 24 --
-
-
- ÅÉêàî öÇëïÇ
- -----------------------------------------------------------------
-
- Åp¿Ñ¼ Σá⌐½á ∩ó½∩ÑΓß∩ »p∩¼« »p«Γ¿ó«»«½«ª¡«⌐ «»ÑpᵿÑ⌐
- »ÑpÑñáτ¿ Σá⌐½á. é«-»Ñpóδσ, Σπ¡¬µ¿∩ »p¿Ñ¼á «ª¿ñáÑΓ ¼áp¬Ñpá ºá»p«ßá
- ¡á »«½πτÑ¡¿Ñ ñá¡¡δσ (ß¿¼ó«½ '?'). ìá »«½πτÑ¡¿Ñ ¼áp¬Ñpá Σπ¡¬µ¿∩
- «ΓóÑτáÑΓ Γ«τ¬«⌐ (ß¿¼ó«½«¼ ¬ó¿Γ¿p«óá¡¿∩). Å«ß½Ñ »«½πτÑ¡¿∩ ¿¼Ñ¡¿
- Σá⌐½á Σπ¡¬µ¿∩ «ª¿ñáÑΓ »«½πτÑ¡¿Ñ Ñú« pẼÑpá ó íá⌐Γáσ. é ¬«¡Ñτ¡«¼
- ¿Γ«úÑ Σπ¡¬µ¿∩ ¡áτ¿¡áÑΓ τΓÑ¡¿Ñ Σá⌐½á. Å«ß½Ñ »«½πτÑ¡¿∩ ¿ τΓÑ¡¿∩
- ¬áªñ«ú« íá⌐Γá Σπ¡¬µ¿∩ »«ßδ½áÑΓ ¬«¼»∞εΓÑpπ-¿ßΓ«τ¡¿¬π ¬ó¿Γ¿pπεΘ¿⌐
- íá⌐Γ. Æá¬¿¼ «ípẫ¼ «¡á pÑ὿ºπÑΓ »p«úpá¼¼¡«Ñ »«ñΓóÑpªñÑ¡¿Ñ
- ßó∩º¿. öπ¡¬µ¿∩ rec_file() »pÑñßΓáó½Ñ¡á ¡¿ªÑ.
-
-
- /* Åα¿Ñ¼ Σá⌐½á */
- void rec_file()
- {
- FILE *fp;
- char ch;
- char fname[14];
- union {
- char c[2];
- unsigned int count;
- } cnt;
-
- get_file_name(fname); /* »«½πτÑ¡¿Ñ ¿¼Ñ¡¿ Σá⌐½á */
-
- printf(" Å«½πτÑ¡ Σá⌐½ %s\n",fname);
- remove(fname);
- if(!(fp=fopen(fname, "wb"))) {
- printf(" ìÑ󫺼«ª¡« «Γ¬pδΓ∞ óδσ«ñ¡«⌐ Σá⌐½ \n");
- exit(1);
- }
-
- /* Å«½πτÑ¡¿Ñ ñ½¿¡δ Σá⌐½á */
- sport(PORT, '.'); /* ¬ó¿Γ¿p«óá¡¿Ñ */
- cnt.c[0] = rport(PORT);
- sport(PORT, '.'); /* ¬ó¿Γ¿p«óá¡¿Ñ */
- cnt.c[1] = rport(PORT);
- sport(PORT, '.'); /* ¬ó¿Γ¿p«óá¡¿Ñ */
-
- for(; cnt.count; cnt.count--) {
- ch = rport(PORT);
- putc(ch, fp);
- if(ferror(fp)) {
- printf(" «Φ¿í¬á ºá»¿ß¿ ó Σá⌐½ ");
- exit(1);
- }
- sport(PORT, '.'); /* ¬ó¿Γ¿p«óá¡¿Ñ */
- }
- fclose(fp);
- }
-
- öπ¡¬µ¿∩ get_file_name() »pÑñßΓáó½Ñ¡á ¡¿ªÑ.
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 25 --
-
-
-
- /* Å«½πτÑ¡¿Ñ ¿¼Ñ¡¿ Σá⌐½á */
- void get_file_name(f)
- char *f;
- {
- printf("Ī¿ñá¡¿Ñ »«½πτÑ¡¿∩...\n");
- while(rport(PORT)!='?') ;
- sport(PORT, '.'); /* ¬ó¿Γ¿p«óá¡¿Ñ */
- while((*f=rport(PORT))) {
- if(*f!='?') {
- f++;
- sport(PORT, '.'); /* ¬ó¿Γ¿p«óá¡¿Ñ */
- }
- }
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 26 --
-
-
- ÅàÉàèÇùèÇ ÅÉÄâÉÇîî¢
- -----------------------------------------------------------------
-
- öá⌐½, ¬«Γ«pδ⌐ «íÑß»Ñτ¿óáÑΓ »ÑpѬáτ¬π »p«úpá¼¼δ ¿º ¬«¼»∞εΓÑpá
- ó ¬«¼»∞εΓÑp, ó¬½ετáεΘ¿⌐ óßÑ ¡Ñ«íσ«ñ¿¼δÑ Σπ¡¬µ¿¿ »«ññÑpª¬¿,
- »pÑñßΓáó½Ñ¡ ó ñá¡¡«¼ »ápáúpáΣÑ. Åp«úpá¼¼á »ÑpѬáτ¬¿ ¿ß»«½∞ºπÑΓ
- »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ ß ¿¼Ñ¡Ñ¼ 0 - »Ñpóδ⌐ »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ;
- «ñ¡á¬«, ¿º¼Ñ¡∩∩ º¡áτÑ¡¿∩ ¼á¬p««»pÑñѽѡ¿∩ PORT ó ¡áτá½Ñ ΓѬßΓá
- »p«úpá¼¼δ, óδ ¼«ªÑΓÑ ¿ß»«½∞º«óáΓ∞ ñpπú¿Ñ »«pΓδ.
-
-
- /* Åp«úpá¼¼á »ÑpѬáτ¬¿ Σá⌐½á, ¿ß»«½∞ºπεΘá∩
- »p«úpá¼¼¡«Ñ »«ñΓóÑpªñÑ¡¿Ñ ßó∩º¿.
- Å«pΓ ¿¡¿µ¿á½¿º¿p«óá¡ ß »ápá¼ÑΓpἿ:
- ߬«p«ßΓ∞ »ÑpÑñáτ¿ - 9600 í«ñ,
- ¬«¡Γp«½∞ τÑΓ¡«ßΓ¿/¡ÑτÑΓ¡«ßΓ¿ ¡Ñ »p«¿ºó«ñ¿Γß∩,
- ó«ßѼ∞ í¿Γ ñá¡¡δσ,
- ñóá ºáóÑpΦáεΘ¿σ ßΓ«»-í¿Γá.
- */
-
- #define PORT 0
-
- #include "dos.h"
- #include "stdio.h"
-
- unsigned int filesize();
- void sport(), send_file(), rec_file(), send_file_name();
- void get_file_name(), port_init(), wait();
-
- main(argc,argv)
- int argc;
- char *argv[];
- {
- if(argc<2) {
- printf(" êß»«½∞ºπ⌐ΓÑ Σ«p¼áΓ TRANS S <¿¼∩ Σá⌐½á> ¿½¿ TRANS R\n");
- exit(1);
- }
-
- printf("çáñáτá »ÑpѬáτ¬¿ »p«úpá¼¼ ºá»πΘÑ¡á. ä½∩ áóáp¿⌐¡«ú«\n");
- printf("ºáóÑpΦÑ¡¿∩ ¡áª¼¿ΓÑ ½εíπε ¬½áó¿Φπ.\n\n");
-
- port_init(PORT, 231); /* ¿¡¿µ¿á½¿ºáµ¿∩ »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá
- */
-
- if(tolower(*argv[1]) == 's') send_file(argv[2]);
- else rec_file();
- }
- /* »ÑpѬáτ¬á ߻ѵ¿Σ¿µ¿p«óá¡¡«ú« Σá⌐½á */
- void send_file(fname)
- char *fname;
- {
- FILE *fp;
- char ch;
- union {
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 27 --
-
-
- char c[2];
- unsigned int count;
- } cnt;
-
- if(!(fp=fopen(fname,"rb"))) {
- printf("éσ«ñ¡«⌐ Σá⌐½ ¡Ñ ¼«ªÑΓ íδΓ∞ «Γ¬pδΓ\n");
- exit(1);
- }
-
- send_file_name(fname); /* »ÑpÑñáτá ¿¼Ñ¡¿ Σá⌐½á */
-
- wait(PORT); /* «ª¿ñá¡¿Ñ ¬ó¿Γ¿pπεΘÑú« íá⌐Γá */
-
- /* óδτ¿ß½Ñ¡¿Ñ pẼÑpá óδσ«ñ¡«ú« Σá⌐½á */
- cnt.count = filesize(fp);
- /* pẼÑp »«ß佬¿ */
- sport(PORT, cnt.c[0]);
- wait(PORT);
- sport(PORT, cnt.c[1]);
-
- do {
- ch = getc(fp);
- if(ferror(fp)) {
- printf(" «Φ¿í¬á τΓÑ¡¿∩ óδσ«ñ¡«ú« Σá⌐½á\n ");
- break;
- }
-
- /* «ª¿ñá¡¿Ñ ú«Γ«ó¡«ßΓ¿ »«pΓá-»p¿Ñ¼¡¿¬á */
- if(!feof(fp)) {
- wait(PORT);
- sport(PORT, ch);
- }
- } while(!feof(fp));
- wait(PORT);/* «ª¿ñá¡¿Ñ »«ñΓóÑpªñÑ¡¿∩ »«½πτÑ¡¿∩ »«ß½Ññ¡Ñú« íá⌐Γá
- */
- fclose(fp);
- }
-
- /* »p¿Ñ¼ Σá⌐½á */
- void rec_file()
- {
- FILE *fp;
- char ch;
- char fname[14];
- union {
- char c[2];
- unsigned int count;
- } cnt;
-
- get_file_name(fname); /* »«½πτÑ¡¿Ñ ¿¼Ñ¡¿ Σá⌐½á */
-
- printf("Å«½πτÑ¡ Σá⌐½ %s\n",fname);
- remove(fname);
- if(!(fp=fopen(fname, "wb"))) {
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 28 --
-
-
- printf(" ìÑ󫺼«ª¡« «Γ¬pδΓ∞ óδσ«ñ¡«⌐ Σá⌐½ \n");
- exit(1);
- }
-
- /* Å«½πτÑ¡¿Ñ ñ½¿¡δ Σá⌐½á */
- sport(PORT, '.'); /* ¬ó¿Γ¿p«óá¡¿Ñ */
- cnt.c[0] = rport(PORT);
- sport(PORT, '.'); /* ¬ó¿Γ¿p«óá¡¿Ñ */
- cnt.c[1] = rport(PORT);
- sport(PORT, '.'); /* ¬ó¿Γ¿p«óá¡¿Ñ */
-
- for(; cnt.count; cnt.count--) {
- ch = rport(PORT);
- putc(ch, fp);
- if(ferror(fp)) {
- printf("ÄΦ¿í¬á ºá»¿ß¿ ó Σá⌐½ ");
- exit(1);
- }
- sport(PORT, '.'); /* ¬ó¿Γ¿p«óá¡¿Ñ */
- }
- fclose(fp);
- }
-
- /* 髺ópáΘÑ¡¿Ñ º¡áτÑ¡¿∩ ñ½¿¡δ Σá⌐½á ó íá⌐Γáσ */
- unsigned int filesize(fp)
- FILE *fp;
- {
- unsigned long int i;
-
- i = 0;
- do {
- getc(fp);
- i++;
- } while(!feof(fp));
- rewind(fp);
- return (i-1); /* ìÑ ßτ¿Γá∩ ß¿¼ó«½ EOF */
- }
-
- /* ÅÑpѬáτ¬á ¿¼Ñ¡¿ Σá⌐½á */
- void send_file_name(f)
- char *f;
- {
- printf(" «ª¿ñá¡¿Ñ »ÑpÑñáτ¿... \n");
- do {
- sport(PORT, '?');
- } while(!kbhit() && !(check_stat(PORT)&256));
- if(kbhit()) {
- getch();
- exit(1);
- }
- wait(PORT); /* «ª¿ñá¡¿Ñ »«½πτÑ¡¿∩ ¬ó¿Γ¿pπεΘÑú« íá⌐Γá */
- printf("ÅÑpÑñá¡« %s\n\n",f);
-
- /* Σá¬Γ¿τÑ߬á∩ »ÑpÑñáτá ¿¼Ñ¡¿ Σá⌐½á */
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 29 --
-
-
- while(*f) {
- sport(PORT, *f++);
- wait(PORT); /* «ª¿ñá¡¿Ñ »«½πτÑ¡¿∩ ¬ó¿Γ¿pπεΘÑú« íá⌐Γá */
- }
- sport(PORT, '\0'); /* ß¿¼ó«½ ¬«¡µá ßΓp«¬¿ */
- }
-
- /* Å«½πτÑ¡¿Ñ ¿¼Ñ¡¿ Σá⌐½á */
- void get_file_name(f)
- char *f;
- {
- printf(" «ª¿ñá¡¿Ñ »«½πτÑ¡¿∩...\n");
- while(rport(PORT)!='?');
- sport(PORT, '.'); /* ¬ó¿Γ¿p«óá¡¿Ñ */
- while((*f=rport(PORT))) {
- if(*f!='?') {
- f++;
- sport(PORT, '.'); /* ¬ó¿Γ¿p«óá¡¿Ñ */
- }
- }
- }
-
- /* Ī¿ñá¡¿Ñ «ΓóÑΓá */
- void wait(port)
- int port;
- {
- if(rport(port)!='.') {
- printf("«Φ¿í¬á πßΓá¡«ó½Ñ¡¿∩ ßó∩º¿ \n");
- exit(1);
- }
- }
-
- /* ÅÑpÑñáτá ß¿¼ó«½á ¿º »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá */
- void sport(port, c)
- int port; /* »«pΓ óó«ñá/óδó«ñá */
- char c; /* »ÑpÑßδ½áѼδ⌐ ß¿¼ó«½ */
- {
- union REGS r;
-
- r.x.dx = port; /* »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ */
- r.h.al = c; /* ß¿¼ó«½ ñ½∩ »ÑpÑñáτ¿ */
- r.h.ah = 1; /* Σπ¡¬µ¿∩ »ÑpÑñáτ¿ ß¿¼ó«½á */
- int86(0x14, &r, &r);
- if(r.h.ah & 128) {
- printf("«Φ¿í¬á »p¿ »ÑpÑñáτÑ ñá¡¡δσ ó »«ß½Ññ«óáΓѽ∞¡«¼ »«pΓπ ");
- exit(1);
- }
- }
-
- /* τΓÑ¡¿Ñ ß¿¼ó«½á ¿º »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá */
- rport(port)
- int port; /* »«pΓ óó«ñá/óδó«ñá */
- {
- union REGS r;
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 30 --
-
-
-
- /* «ª¿ñá¡¿Ñ ß¿¼ó«½á */
- while(!(check_stat(PORT)&256))
- if(kbhit()) { /* áóáp¿⌐¡«Ñ ºáóÑpΦÑ¡¿Ñ »« »pÑpδóá¡¿ε ß
- ¬½áó¿áΓπpδ */
- getch();
- exit(1);
- }
-
- r.x.dx = port; /* »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ */
- r.h.ah = 2; /* Σπ¡¬µ¿∩ τΓÑ¡¿∩ ß¿¼ó«½á */
- int86(0x14, &r, &r);
- if(r.h.ah & 128)
- printf(" «í¡ápπªÑ¡á «Φ¿í¬á τΓÑ¡¿∩ ó »«ß½Ññ«óáΓѽ∞¡«¼ »«pΓπ ");
- return r.h.al;
- }
-
- /* ¬«¡Γp«½∞ ß«ßΓ«∩¡¿∩ »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá */
- cheek_stat(port)
- int port; /* »«pΓ óó«ñá/óδó«ñá */
- {
- union REGS r;
-
- r.x.dx = port; /* »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ */
- r.h.ah = 3; /* τΓÑ¡¿Ñ ß«ßΓ«∩¡¿∩ */
- int86(0x14, &r, &r);
- return r.x.ax;
- }
-
- /* ¿¡¿µ¿á½¿ºáµ¿∩ »«pΓá
- */
- void port_init(port, code)
- int port;
- unsigned char code;
- {
- union REGS r;
-
- r.x.dx = port; /* »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ */
- r.h.ah = 0; /* Σπ¡¬µ¿∩ ¿¡¿µ¿á½¿ºáµ¿¿ »«pΓá*/
- r.h.al = code; /* ¬«ñ ¿¡¿µ¿á½¿ºáµ¿¿ - ß¼. óδΦÑ */
- int86(0x14, &r, &r);
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 31 --
-
-
- êæÅÄï£çÄéÇìêà æÉà俯é ÅàÉàèÇùèê ÅÉÄâÉÇîî
- -----------------------------------------------------------------
-
- Åp«úpá¼¼á »ÑpѬáτ¬¿ «ípáíáΓδóáÑΓ ñá¡¡δÑ ó ß««ΓóÑΓßΓó¿¿ ß
- »ápá¼ÑΓpἿ ó ¬«¼á¡ñ¡«⌐ ßΓp«¬Ñ. é« óßÑσ ß½πτá∩σ »p«úpá¼¼á
- »ÑpѬáτ¬¿ óδºδóáÑΓß∩ »« ¿¼Ñ¡¿ TRANS . Ä¡á óδ»«½¡∩ÑΓ »ÑpÑñáτπ
- Σá⌐½á, ¿ß»«½∞ºπ∩ ß½ÑñπεΘ¿Ñ «ß¡«ó¡δÑ Σ«p¼δ ó맮óá:
-
- TRANS S <¿¼∩_Σá⌐½á>,
-
- úñÑ <¿¼∩_Σá⌐½á> - ¿¼∩ Σá⌐½á, ¬«Γ«pδ⌐ ΓpÑíπÑΓß∩ »ÑpÑñáΓ∞ ó
- ñpπú«⌐ ¬«¼»∞εΓÑp τÑpѺ »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ.
-
- ä½∩ »«½πτÑ¡¿∩ Σá⌐½á ¡Ñ«íσ«ñ¿¼« óδñáΓ∞ ¬«¼á¡ñπ:
-
- TRANS R
-
- Åp¿ »«½πτÑ¡¿¿ Σá⌐½á ߻ѵ¿Σ¿µ¿p«óáΓ∞ Ñú« ¿¼∩ ¡ÑΓ
- ¡Ñ«íσ«ñ¿¼«ßΓ¿ ó ßó∩º¿ ß ΓѼ, τΓ« ¿¼∩ »ÑpÑñáóáѼ«ú« Σá⌐½á
- »«ßδ½áÑΓß∩ »ÑpÑñ Ñú« ¡Ñ»«ßpÑñßΓóÑ¡¡«⌐ »ÑpÑñáτÑ⌐ ¿º ¬«¼»∞εΓÑpá -
- ¿ßΓ«τ¡¿¬á.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 32 --
-
-
- äÇï£ìàëÿàà æÄéàÉÿàìæÆéÄéÇìêà ÅÉÄâÉÇîî¢
- -----------------------------------------------------------------
-
- Åp«úpá¼¼á »ÑpѬáτ¬¿ Σá⌐½«ó ∩ó½∩ÑΓß∩ Σπ¡¬µ¿«¡á½∞¡« »«½¡«⌐,
- ß«óÑpΦÑ¡¡« íѺ«»áß¡«⌐ ¿ ¡áñѪ¡«⌐. àßΓÑßΓóÑ¡¡«, τΓ« »p¿
- φ¬ß»½πáΓᵿ¿¿ »p«úpá¼¼δ óá¼ ¼«ªÑΓ óßΓpÑΓ¿Γ∞ß∩ p∩ñ ¬p¿Γ¿τÑ߬¿σ
- ß¿Γπᵿ⌐, ñ½∩ ¬«Γ«pδσ ñáªÑ ¡Ñ πßΓá¡«ó½Ñ¡δ ß««ΓóÑΓßΓóπεΘ¿Ñ ¬«ñδ
- «Φ¿í«¬. é φΓ«¼ ß½πτáÑ óδ, 󫺼«ª¡«, ºáσ«Γ¿ΓÑ ¡Ñ߬«½∞¬«
- πß«óÑpΦÑ¡ßΓó«óáΓ∞ φΓπ »p«úpá¼¼π, ñ«íáó¿ó ó ¡ÑÑ ¡«óδÑ Σπ¡¬µ¿¿.
-
- Äñ¡¿¼ ¿º »πΓÑ⌐ óδ∩ó½Ñ¡¿∩ ¬p¿Γ¿τÑ߬¿σ ß¿Γπᵿ⌐ »p¿ »ÑpÑñáτÑ
- ñá¡¡δσ ∩ó½∩ÑΓß∩ «íÑß»ÑτÑ¡¿Ñ pѪ¿¼á "φσ«" ñ½∩ ¬áªñ«ú« »«½πτÑ¡¡«ú«
- íá⌐Γá, pÑ὿ºπѼ«ú« »πΓѼ ¿ß»«½∞º«óá¡¿∩ ó ¬áτÑßΓóÑ ¬ó¿Γ¿pπεΘÑú«
- íá⌐Γá Γ«½∞¬« τΓ« »«½πτÑ¡¡«ú« íá⌐Γá ¿¡Σ«p¼áµ¿¿. ä½∩ φΓ«ú« ¡áñ«
- ñ«páí«ΓáΓ∞ Σπ¡¬µ¿ε »ÑpÑñáτ¿. Ä¡á, ó τáßΓ¡«ßΓ¿, ñ«½ª¡á íπñÑΓ
-
- »p«ó«ñ¿Γ∞ cpáó¡Ñ¡¿Ñ »ÑpÑñá¡¡«ú« íá⌐Γá ß ß««ΓóÑΓßΓóπεΘ¿¼ φΓ«⌐
- »ÑpÑñáτÑ ¬ó¿Γ¿pπεΘ¿¼ íá⌐Γ«¼. Åp¿ «í¡ápπªÑ¡¿¿ αẽ¿τ¿⌐ φΓ¿σ íá⌐Γ«ó
- Σπ¡¬µ¿∩ ñ«½ª¡á ¿¡Σ«p¼¿p«óáΓ∞ «í «Φ¿í¬Ñ.
-
- ¡« Γá¬ªÑ ñ«páí«ΓáΓ∞ »p«úpá¼¼π Γá¬, τΓ«íδ «¡á «ßπΘÑßΓó½∩½á
- »«»δΓ¬π »«óΓ«p¿Γ∞ ñÑ⌐ßΓó¿∩, óδºδóáεΘ¿Ñ «Φ¿í¬π, á ¡Ñ »pѬpáΘá½á
- Σπ¡¬µ¿«¡¿p«óá¡¿Ñ »p¿ «í¡ápπªÑ¡¿¿ «Φ¿í¬¿. æ½ÑñπÑΓ «Γ¼ÑΓ¿Γ∞, τΓ«
- áóΓ«¼áΓ¿τÑ߬¿⌐ »ÑpѺá»π߬ Σπ¡¬µ¿⌐ ó »p«úpá¼¼Ñ »ÑpѬáτ¬¿ Σá⌐½«ó
- º¡áτ¿Γѽ∞¡« πß½«ª¡∩ÑΓ ¬á¬ Σπ¡¬µ¿¿ »ÑpÑñáτ¿, Γᬠ¿ Σπ¡¬µ¿¿
- »«½πτÑ¡¿∩ Σá⌐½«ó. ì« ó Γ« ªÑ ópѼ∩ ºáΓpáΓδ »«½¡«ßΓ∞ε «¬π»∩Γß∩
- ΓѼ, τΓ« óδ»«½¡Ñ¡¿Ñ »p«úpá¼¼δ ¡á «ñ¡«¼, á ¼«ªÑΓ íδΓ∞ ßpáºπ ¿ ¡á
- ñóπσ ¬«¼»∞εΓÑpáσ ß¼«ªÑΓ ó φΓ«¼ ß½πτáÑ «í«⌐Γ¿ß∞ íѺ
- ¡Ñ»«ßpÑñßΓóÑ¡¡«ú« ß«»p«ó«ªñÑ¡¿∩ »«½∞º«óáΓѽѼ.
-
- ê, ¡á¬«¡Ñµ, óá¼ ¼«ªÑΓ »«¡áñ«í¿Γ∞ß∩ óδñáτá »p¿τ¿¡δ
- 󫺡¿¬¡«óÑ¡¿∩ Γ«⌐ ¿½¿ ¿¡«⌐ «Φ¿í¬¿ ó »p«µÑßßÑ »ÑpÑñáτ¿ Σá⌐½«ó. ¥Γ«
- ßó«⌐ßΓó« »p«úpá¼¼δ «τÑ¡∞ »«¼«ªÑΓ óá¼ »p¿ pÑΦÑ¡¿¿ »p«í½Ñ¼
- ñ¿áú¡«ßΓ¿¬¿ »p«µÑßßá »ÑpÑñáτ¿ Σá⌐½«ó ¿º ¬«¼»∞εΓÑpá ó ¬«¼»∞εΓÑp.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 33 --
-
-
- ÅÉÄæÆàëÿǃ ïéæ
- -----------------------------------------------------------------
-
- 﫬á½∞¡δÑ óδτ¿ß½¿Γѽ∞¡δÑ ßÑΓ¿ (ïéæ) »«½πτáεΓ óßÑ í«½∞Φπε
- »«»π½∩p¡«ßΓ∞ »p¿ ß«ó¼ÑßΓ¡«¼ ¿ß»«½∞º«óá¡¿¿ ¼¡«ªÑßΓóá ¬«¼»∞εΓÑp«ó.
- ¥Γ¿ ßÑΓ¿ «íÑß»Ñτ¿óáεΓ »ÑpÑñáτπ ¬á¬ ñá¡¡δσ, Γᬠ¿ »p«úpá¼¼ ¼Ñªñπ
- ¼¡«ªÑßΓó«¼ pẽ¿τ¡δσ ¬«¼»∞εΓÑp«ó. æπΘÑßΓóπÑΓ ñóá «ß¡«ó¡δσ ß»«ß«íá
- «íΩÑñ¿¡Ñ¡¿∩ ¬«¼»∞εΓÑp«ó ó ïéæ. ÅÑpóδ⌐ ¼ÑΓ«ñ ß«ßΓ«¿Γ ó «íΩÑñ¿¡Ñ¡¿¿
- óßÑσ ¬«¼»∞εΓÑp«ó ó ßÑΓ∞, »p¿τѼ ½εí«⌐ ¬«¼»∞εΓÑp ¼«ªÑΓ «ípáΓ¿Γ∞ß∩
- ºá ¿¡Σ«p¼áµ¿Ñ⌐ ¿½¿ »p«úpá¼¼«⌐ ¬ ½εí«¼π ñpπú«¼π ¬«¼»∞εΓÑpπ. Æá¬«⌐
- ß»«ß«í «íΩÑñ¿¡Ñ¡¿∩ ¡áºδóáÑΓß∩ ßÑΓ∞ε ß ¬«½∞µÑó«⌐ Γ«»«½«ú¿Ñ⌐.
- Äñ¡á¬«, φΓ«Γ Γ¿» ßÑΓÑ⌐ ¬p«¼Ñ óßÑσ Ñú« »pÑ¿¼πΘÑßΓó «í½áñáÑΓ ΓpѼ∩
- ¬pπ»¡δ¼¿ ¡Ññ«ßΓáΓ¬á¼¿, ¬«Γ«pδÑ «íπß½áó½¿óáεΓ ñ«ó«½∞¡« pÑñ¬«Ñ Ñú«
- ¿ß»«½∞º«óá¡¿Ñ. é«-»Ñpóδσ, φΓ« Γpπñ¡«ßΓ∞ (σ«Γ∩ φΓá »p«í½Ñ¼á ¿
- páºpÑΦ¿¼á) «íÑß»ÑτÑ¡¿∩ íѺ«»áß¡«ßΓ¿ ¿¡Σ«p¼áµ¿¿. é«-óΓ«pδσ,
- π»páó½Ñ¡¿Ñ ñá¡¡δ¼¿ ¿ »p«úpἼἿ ñ«½ª¡« óδ»«½¡∩Γ∞ß∩ ¬«¼»½Ñ¬ß¡«,
- Γᬠ¬á¬ µÑ¡Γp὿º«óá¡¡«ú« pẼÑΘÑ¡¿∩ «»pÑñѽѡ¡δσ Σá⌐½«ó ñ«í¿Γ∞ß∩
- ¡Ñ󫺼«ª¡«. é-ΓpÑΓ∞¿σ, ¬áªñδ⌐ ¬«¼»∞εΓÑp, ó¬½ετÑ¡¡δ⌐ ó ßÑΓ∞,
- ñ«½ªÑ¡ »«ßΓ«∩¡¡« óδñѽ∩Γ∞ τáßΓ∞ ßó«¿σ óδτ¿ß½¿Γѽ∞¡δσ pÑßπpß«ó ¡á
- »ÑpÑß佬π pẽ¿τ¡δσ Σá⌐½«ó »«½∞º«óáΓѽÑ⌐, τΓ« º¡áτ¿Γѽ∞¡«
- »«¡¿ªáÑΓ »p«¿ºó«ñ¿Γѽ∞¡«ßΓ∞ ¬áªñ«ú« ¬«¼»∞εΓÑpá.
- éΓ«pδ¼, í«½ÑÑ «íΘ¿¼ ¼ÑΓ«ñ«¼ ß«ºñá¡¿∩ ïéæ ∩ó½∩ÑΓß∩ ßÑΓ∞
- ºóѺñ««ípạ«⌐ Γ«»«½«ú¿¿. ¥Γ«Γ ¼ÑΓ«ñ ¿ß»«½∞ºπÑΓ µÑ¡Γpá½∞¡δ⌐
- ¬«¼»∞εΓÑp-ñ¿ß»ÑΓτÑp ñ½∩ σpá¡Ñ¡¿∩ Σá⌐½«ó ¿ «íÑß»ÑτÑ¡¿∩ ¿¼¿ ñpπú¿σ
- ¬«¼»∞εΓÑp«ó ßÑΓ¿. ûÑ¡Γpá½∞¡δ⌐ ¬«¼»∞εΓÑp τáßΓ« ¡áºδóáεΓ Σá⌐½«óδ¼
- ßÑαóÑα«¼ (file server). 諼»∞εΓÑpδ, ¿¼ÑεΘ¿Ñ ñ«ßΓπ» ¬ Σá⌐½«ó«¼π
- ßÑαóÑαπ, ó ºáó¿ß¿¼«ßΓ¿ «Γ »p«¿ºó«ñ¿Γѽ∞¡«ßΓ¿ ¿ ߻ѵ¿Σ¿¬¿
- ¿ß»«½∞º«óá¡¿∩ ¡áºδóáεΓß∩ πº½á¼¿ ßÑΓ¿ (nodes), ΓÑp¼¿¡á½á¼¿
- (terminals) ¿½¿ páí«τ¿¼¿ ßΓᡵ¿∩¼¿ (workstations).
-
- Äß«íÑ¡¡«ßΓ¿ Γ«»«½«ú¿¿ ñóπσ Γ¿»«ó ßÑΓÑ⌐ ¿½½εßΓp¿pπÑΓ p¿ßπ¡«¬
- 6-1. é ñá¡¡«¼ »ápáúpáΣÑ páßß¼áΓp¿óáÑΓß∩ ßÑΓ∞ ºóѺñ««ípạ«⌐
- Γ«»«½«ú¿¿. é ñÑ⌐ßΓó¿Γѽ∞¡«ßΓ¿ ó ºáú«½«ó¬Ñ »ápáúpáΣá ÑßΓ∞
- »pÑπóѽ¿τÑ¡¿Ñ. é ¡áßΓ«∩Θ¿σ ïéæ Σá⌐½«óδ⌐ ßÑαóÑα "»p«ºpáτÑ¡" ñ½∩
- óßÑσ áí«¡Ñ¡Γ«ó ßÑΓ¿ ¿ ½¿Φ∞ páßΦ¿p∩ÑΓ ó«º¼«ª¡«ßΓ¿ páí«τ¿σ ßΓᡵ¿⌐
- ïéæ »« ¡Ñ»«ßpÑñßΓóÑ¡¡«¼π ñ«ßΓπ»π ¬ Σá⌐½á¼ Σá⌐½«ó«ú« ßÑαóÑαá.
- Åp«úpá¼¼δ, »pÑñßΓáó½Ñ¡¡δÑ ó φΓ«¼ »ápáúpáΣÑ, ¿ß»«½∞ºπεΓß∩ páí«τÑ⌐
- ßΓᡵ¿Ñ⌐ ïéæ ñ½∩ ∩ó¡«ú« π¬áºá¡¿∩ Σá⌐½á ¿ ñ«ßΓπ»á ¬ ¡Ñ¼π. Æá¬¿¼
- «ípẫ¼, φëà »«ñσ«ñ «í½ÑúτáÑΓ ñá½∞¡Ñ⌐ΦÑÑ páºó¿Γ¿Ñ »p«úpá¼¼¡«ú«
- «íÑß»ÑτÑ¡¿∩, Γᬠ¬á¬ ¡Ñ ΓpÑíπÑΓ ß»Ñµ¿á½∞¡δσ á»»ápáΓ¡δσ ßpÑñßΓó
- ñ½∩ pÑ὿ºáµ¿¿ Σá⌐½«ó«ú« ßÑαóÑαá. éδ ¼«ªÑΓÑ ¿ß»«½∞º«óáΓ∞ φΓ¿
- »p«úpá¼¼δ ó ¬áτÑßΓóÑ ßΓápΓ«ó«⌐ Γ«τ¬¿ »p¿ páºpáí«Γ¬Ñ óßÑú«
- »p«úpá¼¼¡«ú« «íÑß»ÑτÑ¡¿∩ ïéæ.
-
-
-
-
-
-
-
-
-
-
-
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 34 --
-
-
- öÇëïÄé¢ë æàÉéàÉ
- -----------------------------------------------------------------
-
- öá⌐½«óδ⌐ ßÑαóÑα ¡áσ«ñ¿Γß∩ ó µÑ¡ΓpÑ ßÑΓ¿ ºóѺñ««ípạ«⌐
- Γ«»«½«ú¿¿ ¿ «ßπΘÑßΓó½∩ÑΓ »«ß½Ññ«óáΓѽ∞¡δ⌐ ¬«¡Γp«½∞ ß«ßΓ«∩¡¿⌐
- ¬áªñ«ú« »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá ó ß¿ßΓѼÑ. Éáí«τá∩ ßΓᡵ¿∩
- ß¿ú¡á½¿º¿pπÑΓ « ΓpÑí«óá¡¿¿ ¡á »«½πτÑ¡¿Ñ ¿½¿ »ÑpÑñáτπ Σá⌐½á,
- »«¼ÑΘá∩ ß¿¼ó«½ "r" ¿½¿ "s" ó ßó«⌐ »«pΓ. æ¿¼ó«½ "s" «º¡áτáÑΓ
- ΓpÑí«óá¡¿Ñ ¡á »ÑpÑñáτπ Σá⌐½á; ß¿¼ó«½ "r" «º¡áτáÑΓ ΓpÑí«óá¡¿Ñ ¡á
- »«½πτÑ¡¿Ñ Σá⌐½á (¿ ß«σpá¡Ñ¡¿Ñ Ñú«) ß »«¼«Θ∞ε Σá⌐½«ó«ú« ßÑαóÑαá.
-
- _________________________________________________________________
-
- "èÄï£ûÄ"
-
- ┌────┐ ┌────┐
- │░░░░│ ──────────────── │░░░░│
- ┌─┴────┴─┐ ┌─┴────┴─┐
- └────────┘ └────────┘
-
- │ │
- │ │
-
- ┌────┐ ┌────┐
- │░░░░│ ──────────────── │░░░░│
- ┌─┴────┴─┐ ┌─┴────┴─┐
- └────────┘ └────────┘
-
- _________________________________________________________________
-
- "çéàçäÇ"
- ┌────┐
- │░░░░│
- ┌─┴────┴─┐
- └────────┘
-
- │
- │
- ┌────┐ │ ┌────┐
- │░░░░│ ────────── öÇëïÄé¢ë ────────── │░░░░│
- ┌─┴────┴─┐ ÅÉÄûàææÄÉ ┌─┴────┴─┐
- └────────┘ │ └────────┘
- │
- │
-
- ┌────┐
- │░░░░│
- ┌─┴────┴─┐
- └────────┘
- _________________________________________________________________
-
- É¿ß. 6.1. æÑΓ¿ ¬«½∞µÑó«⌐ ¿ ºóѺñ««ípạ«⌐ Γ«»«½«ú¿¿.
-
- Åp¿ pÑú¿ßΓpᵿ¿ »«∩ó½Ñ¡¿∩ ó «ñ¡«¼ ¿º »«pΓ«ó ¼áp¬Ñpá,
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 35 --
-
-
- ß««ΓóÑΓßΓóπεΘÑú« ΓpÑí«óá¡¿ε ¡á »«½πτÑ¡¿Ñ ¿½¿ »ÑpÑñáτπ ñá¡¡δσ,
- Σá⌐½«óδ⌐ ßÑαóÑα óδ»«½¡∩ÑΓ Ñú«, á ºáΓѼ «ßπΘÑßΓó½∩ÑΓ
- »«ß½Ññ«óáΓѽ∞¡δ⌐ ¬«¡Γp«½∞ ß«ßΓ«∩¡¿⌐ óßÑσ »«ß½Ññ«óáΓѽ∞¡δσ »«pΓ«ó
- ó «ª¿ñá¡¿¿ ¡«ó«ú« ºá»p«ßá ¡á »ÑpÑß佬π Σá⌐½«ó. é ñÑ⌐ßΓó¿Γѽ∞¡«ßΓ¿
- »«½πτÑ¡¿Ñ ¿½¿ »ÑpÑñáτá Σá⌐½á ó ßÑΓ¿ íếpπÑΓß∩ ¡á ¿ß»«½∞º«óá¡¿¿
- »p«úpá¼¼δ »ÑpѬáτ¬¿ Σá⌐½«ó ¿º »Ñpó«⌐ τáßΓ¿ ú½áóδ.
-
- Äß¡«ó¡«⌐ µ¿¬½ páí«Γδ Σá⌐½«ó«ú« ßÑαóÑαá »pÑñßΓáó½Ñ¡ ¡¿ªÑ.
- ÆÑ¬ßΓδ »p«úpá¼¼, óßΓáó½Ñ¡¡δÑ ó ó¿ñÑ ¬«¼¼Ñ¡Γáp¿∩, »«ºó«½∩εΓ
- »p«ß½Ññ¿Γ∞ «ß¡«ó¡«⌐ µ¿¬½ páí«Γδ Σá⌐½«ó«ú« ßÑαóÑαá »p¿ »«ñ¬½ετÑ¡¿¿
- ¬ ¡Ñ¼π ¡«óδσ »«pΓ«ó (¡«óδσ áí«¡Ñ¡Γ«ó ó ßÑΓ∞).
-
-
- main()
- {
-
- printf("Éáí«ΓáÑΓ Σá⌐½«óδ⌐ ßÑαóÑα./n");
- printf("ä½∩ óδσ«ñá ¡áª¼¿ΓÑ ½εíπε ¬½áó¿Φπ./n/n");
-
- port_init(PORT); /* ¿¡¿µ¿á½¿ºáµ¿¿ »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá */
-
- do {
- /*«ª¿ñá¡¿Ñ ºá»p«ßá ¡á «ípáí«Γ¬π Σá⌐½á */
- if(check_stat(PORT)&256) {
- switch(rport(PORT)) {
- case 's': send_file(PORT);
- break;
- case 'r': rec_file(PORT);
- break;
- }
- }
-
- /*************************************
- Åp¿ »«ñ¬½ετÑ¡¿¿ ¡«óδσ páí«τ¿σ ßΓᡵ¿⌐
- ¬«¡Γp«½∞ ß«ßΓ«∩¡¿∩ ñ«»«½¡¿Γѽ∞¡δσ »«pΓ«ó
- ¬á¬ »p¿óÑñÑ¡« ¡¿ªÑ...
-
- if(check_stat(PORT1)&256) {
- switch(rport(PORT1)) {
- case 's': send_file(PORT1);
- break;
- case 'r': rec_file(PORT1);
- break;
- }
- }
- .
- .
- .
- if(check_stat(PORTn)&256) {
- switch(rport(PORTn)) {
- case 's': send_file(PORTn);
- break;
- case 'r': rec_file(PORTn);
- break;
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 36 --
-
-
- }
- }
- ******************************************/
- } while(!kbhit());
- }
-
- èᬠó¿ñ¿ΓÑ, Σá⌐½«óδ⌐ ßÑαóÑα páí«ΓáÑΓ Γ«½∞¬« ß «ñ¡«⌐ páí«τÑ⌐
- ßΓᡵ¿Ñ⌐ (áí«¡Ñ¡Γ«¼ ßÑΓ¿), «ñ¡á¬«, ¬á¬ π¬áºá¡« ó ¬«¼¼Ñ¡Γáp¿¿, «¡
- ¼«ªÑΓ páí«ΓáΓ∞ ó »p¿¡µ¿»Ñ ß N áí«¡Ñ¡ΓἿ ßÑΓ¿. çá¼ÑΓ∞ΓÑ, τΓ«
- Σá⌐½«óδ⌐ ßÑαóÑα páí«ΓáÑΓ ñ« ΓÑσ »«p, »«¬á ¡Ñ »«ßΓπ»¿½« »pÑpδóá¡¿⌐
- ß ¬½áó¿áΓπpδ. ¥Γ« »«ºó«½∩ÑΓ Ñ¼π óßÑúñá íδΓ∞ ó ß«ßΓ«∩¡¿¿
- ú«Γ«ó¡«ßΓ¿ «ípáí«Γ¬¿ «τÑpÑñ¡«ú« ΓpÑí«óá¡¿∩ ¡á »ÑpÑñáτπ/»«½πτÑ¡¿Ñ
- Σá⌐½á.
-
- èᬠóδ ¼«ªÑΓÑ ó¿ñÑΓ∞, Σπ¡¬µ¿¿ send_file() ¿ rec_file()
- ΓÑ»Ñp∞ «ßπΘÑßΓó½∩εΓ «ípáí«Γ¬π »«pΓá, ¬«Γ«pδ⌐ »ÑpÑñáÑΓß∩ ¿¼ ¬á¬
- ápúπ¼Ñ¡Γ. ¥Γ« «íΩ∩ß¡∩ÑΓß∩ ¡Ñ«íσ«ñ¿¼«ßΓ∞ε «ípáí«Γ¬¿ Σá⌐½«óδ¼
- ßÑαóÑα«¼ ¼¡«ªÑßΓóá pẽ¿τ¡δσ »«ß½Ññ«óáΓѽ∞¡δσ »«pΓ«ó. é Σπ¡¬µ¿¿
- Σá⌐½«ó«ú« ßÑαóÑαá óσ«ñ¿Γ Γá¬ªÑ »ÑpÑñáτá ¬ó¿Γ¿pπεΘÑú« ß¿¼ó«½á
- áí«¡Ñ¡Γá¼ ó ß½πτáÑ »«½πτÑ¡¿∩ «Γ ¡¿σ ΓpÑí«óá¡¿∩ ¡á »ÑpÑñáτπ Σá⌐½á
- ó Σá⌐½«óδ⌐ ßÑαóÑα. î«ñ¿Σ¿¬áµ¿∩ Σπ¡¬µ¿⌐ send_file() ¿ rec_file()
- ñ½∩ páí«Γδ ó Σá⌐½«ó«¼ ßÑαóÑαÑ »p¿óÑñÑ¡á ¡¿ªÑ.
-
-
-
- /* ÅÑpѬáτ¬á ߻ѵ¿Σ¿µ¿p«óá¡¡«ú« Σá⌐½á τÑpѺ »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ
- */
- void send_file(port)
- int port;
- {
- FILE *fp;
- char ch, fname[14];
- union {
- char c[2];
- unsigned int count;
- } cnt;
-
- sport(port, '.'); /* ¬ó¿Γ¿p«óá¡¿Ñ */
-
- get_file_name(fname, PORT);
- if(!(fp=fopen(fname,"rb"))) {
- printf("éσ«ñ¡«⌐ Σá⌐½ ¡Ñ ¼«ªÑΓ íδΓ∞ «Γ¬pδΓ\n");
- exit(1);
- }
-
- if(rport(port)!='.') {
- printf("æí«⌐ »p¿ páí«ΓÑ ß πñá½Ñ¡¡δ¼ Σá⌐½«¼\n");
- exit(1);
- }
-
- printf("ÅÑpÑßδ½áÑΓß∩ Σá⌐½ %s\n", fname);
- /* Ä»pÑñѽѡ¿Ñ pẼÑpá Σá⌐½á */
- cnt.count = filesize(fp);
- /* ÅÑpÑñáτá pẼÑpá Σá⌐½á */
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 37 --
-
-
- sport(port, cnt.c[0]);
- wait(port);
-
- sport(port, cnt.c[1]);
- do {
- ch = getc(fp);
- if(ferror(fp)) {
- printf("ÄΦ¿í¬á τΓÑ¡¿∩ óσ«ñ¡«ú« Σá⌐½á\n");
- break;
- }
-
- /*Ī¿ñá¡¿Ñ ú«Γ«ó¡«ßΓ¿ »«½πτáΓѽ∩*/
- if(!feof(fp)) {
- wait(port);
- sport(port, ch);
- }
- } while(!feof(fp));
- wait(port); /*τΓÑ¡¿Ñ »«ß½Ññ¡Ñ⌐ »«pµ¿¿ ñá¡¡δσ ¿º »«pΓá*/
- fclose(fp);
- }
-
- /*Å«½πτÑ¡¿Ñ Σá⌐½á τÑpѺ »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ*/
- void rec_file(port)
- int port;
- {
- FILE *fp;
- char ch, fname[14];
- union {
- char c[2];
- unsigned int count;
- } cnt;
-
- sport(port, '.'); /* ¬ó¿Γ¿p«óá¡¿Ñ */
-
- get_file_name(fname, PORT);
-
- printf("Å«½πτÑ¡ Σá⌐½ %s\n", fname);
- remove(fname);
- if(!(fp=fopen(fname,"wb"))) {
- printf("éδσ«ñ¡«⌐ Σá⌐½ ¡Ñ ¼«ªÑΓ íδΓ∞ «Γ¬pδΓ\n");
- exit(1);
- }
-
- /*ßτ¿Γδóá¡¿Ñ ñ½¿¡δ Σá⌐½á*/
- sport(port, '.');
- cnt.c[0] = rport(port);
- sport(port, '.');
- cnt.c[1] = rport(port);
- sport(port, '.');
-
- for(; cnt.count; cnt.count--) {
- ch = rport(port);
- putc(ch, fp);
- if(ferror(fp)) {
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 38 --
-
-
- printf("ÄΦ¿í¬á »p¿ ºá»¿ß¿ Σá⌐½á\n");
- exit(1);
- }
- sport(port, '.');
- }
- fclose(fp);
- }
-
-
- Å«½¡«ßΓ∞ε »p«úpá¼¼á, pÑ὿ºπεΘá∩ Σá⌐½«óδ⌐ ßÑαóÑα, »p¿óÑñÑ¡á
- ¡¿ªÑ. ¥Γá »p«úpá¼¼á ¿ß»«½∞ºπÑΓ »«pΓ ß ¿¼Ñ¡Ñ¼ 0. Äñ¡á¬«, Ñß½¿ óδ
- ¿¼ÑÑΓÑ í«½ÑÑ «ñ¡«ú« áí«¡Ñ¡Γá ó ßÑΓ¿, Γ« óδ ñ«½ª¡δ ñ«íáó¿Γ∞ ó φΓπ
- »p«úpá¼¼π ß««ΓóÑΓßΓóπεΘ¿Ñ «»ÑpáΓ«pδ ( ß¼. «ß¡«ó¡«⌐ páí«τ¿⌐ µ¿¬½
- Σá⌐½«ó«ú« ßÑαóÑαá ) ñ½∩ «ípáí«Γ¬¿ »«pΓá ¡«ó«ú« áí«¡Ñ¡Γá.
-
-
- /* Åp«ßΓÑ⌐Φ¿⌐ Σá⌐½«óδ⌐ ßÑαóÑα ïéæ. Åápá¼ÑΓpδ »«pΓá:
- ߬«p«ßΓ∞ »ÑpÑñáτ¿ - 9600 í«ñ,
- ¬«¡Γp«½∞ τÑΓ¡«ßΓ¿ ó䬽. ,
- ó«ßѼ∞ í¿Γ ñá¡¡δσ,
- ñóá ºáóÑpΦáεΘ¿σ ßΓ«»-í¿Γá.
- */
-
- #define PORT 0
-
- #include "dos.h"
- #include "stdio.h"
-
- unsigned int filesize();
- void sport(), send_file(), rec_file(), send_file_name();
- void get_file_name(), port_init(), wait();
-
- main()
- {
-
- printf("Éáí«ΓáÑΓ Σá⌐½«óδ⌐ ßÑαóÑα.\n");
- printf("ä½∩ óδσ«ñá ¡áª¼¿ΓÑ ½εíπε ¬½áó¿Φπ./n/n");
-
-
- port_init(PORT); /* ¿¡¿µ¿á½¿ºáµ¿¿ »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá */
-
- do {
- /*«ª¿ñá¡¿Ñ ºá»p«ßá ¡á «ípáí«Γ¬π Σá⌐½á*/
- if(check_stat(PORT)&256) {
- switch(rport(PORT)) {
- case 's': send_file(PORT);
- break;
- case 'r': rec_file(PORT);
- break;
- }
- }
- /*****************************************
- Åp¿ »«ñ¬½ετÑ¡¿¿ ¡«óδσ páí«τ¿σ ßΓᡵ¿⌐
- ¬«¡Γp«½∞ ß«ßΓ«∩¡¿∩ ñ«»«½¡. »«pΓ«ó, ¬á¬
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 39 --
-
-
- »p¿óÑñÑ¡« ¡¿ªÑ...
-
- if(check_stat(PORT1)&256) {
- switch(rport(PORT1)) {
- case 's': send_file(PORT1);
- break;
- case 'r': rec_file(PORT1);
- break;
- }
- }
- .
- .
- .
- if(check_stat(PORTn)&256) {
- switch(rport(PORTn)) {
- case 's': send_file(PORTn);
- break;
- case 'r': rec_file(PORTn);
- break;
- }
- }
- ******************************************/
- } while(!kbhit());
- }
-
- /* ÅÑpѬáτ¬á ߻ѵ¿Σ¿µ¿p«óá¡¡«ú« Σá⌐½á τÑpѺ »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ
- */
- void send_file(port)
- int port;
- {
- FILE *fp;
- char ch, fname[14];
- union {
- char c[2];
- unsigned int count;
- } cnt;
-
- sport(port, '.'); /* ¬ó¿Γ¿p«óá¡¿Ñ */
-
- get_file_name(fname, PORT);
- if(!(fp=fopen(fname,"rb"))) {
- printf("éσ«ñ¡«⌐ Σá⌐½ ¡Ñ ¼«ªÑΓ íδΓ∞ «Γ¬pδΓ\n");
- exit(1);
- }
-
- if(rport(port)!='.') {
- printf("æí«⌐ »p¿ páí«ΓÑ ß πñá½Ñ¡¡δ¼ Σá⌐½«¼\n");
- exit(1);
- }
-
- printf("ÅÑpÑßδ½áÑΓß∩ Σá⌐½ %s\n", fname);
- /* Ä»pÑñѽѡ¿Ñ pẼÑpá Σá⌐½á */
- cnt.count = filesize(fp);
- /* ÅÑpÑñáτá pẼÑpá Σá⌐½á */
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 40 --
-
-
- sport(port, cnt.c[0]);
- wait(port);
-
- sport(port, cnt.c[1]);
- do {
- ch = getc(fp);
- if(ferror(fp)) {
- printf("ÄΦ¿í¬á τΓÑ¡¿∩ óσ«ñ¡«ú« Σá⌐½á\n");
- break;
- }
-
- /*Ī¿ñá¡¿Ñ ú«Γ«ó¡«ßΓ¿ »«½πτáΓѽ∩*/
- if(!feof(fp)) {
- wait(port);
- sport(port, ch);
- }
- } while(!feof(fp));
- wait(port); /*τΓÑ¡¿Ñ »«ß½Ññ¡Ñ⌐ »«pµ¿¿ ñá¡¡δσ ¿º »«pΓá*/
- fclose(fp);
- }
-
- /*ÅÑpÑñáτá ߻ѵ¿Σ¿µ¿p«óá¡¡«ú« Σá⌐½á τÑpѺ »«ß½Ññ«óáΓѽ∞¡δ⌐
- »«pΓ.*/
- void rec_file(port)
- int port;
- {
- FILE *fp;
- char ch, fname[14];
- union {
- char c[2];
- unsigned int count;
- } cnt;
-
- sport(port, '.'); /* ¬ó¿Γ¿p«óá¡¿Ñ */
-
- get_file_name(fname, PORT);
-
- printf("Å«½πτÑ¡ Σá⌐½ %s\n", fname);
- remove(fname);
- if(!(fp=fopen(fname,"wb"))) {
- printf("éδσ«ñ¡«⌐ Σá⌐½ ¡Ñ ¼«ªÑΓ íδΓ∞ «Γ¬pδΓ\n");
- exit(1);
- }
-
- /*ßτ¿Γδóá¡¿Ñ ñ½¿¡δ Σá⌐½á*/
- sport(port, '.');
- cnt.c[0] = rport(port);
- sport(port, '.');
- cnt.c[1] = rport(port);
- sport(port, '.');
-
- for(; cnt.count; cnt.count--) {
- ch = rport(port);
- putc(ch, fp);
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 41 --
-
-
- if(ferror(fp)) {
- printf("ÄΦ¿í¬á »p¿ ºá»¿ß¿ Σá⌐½á\n");
- exit(1);
- }
- sport(port, '.');
- }
- fclose(fp);
- }
-
- /* 髺ópáΘÑ¡¿Ñ º¡áτÑ¡¿∩ ñ½¿¡δ Σá⌐½á ó íá⌐Γáσ */
- unsigned int filesize(fp)
- FILE *fp;
- {
- unsigned long int i;
-
- i = 0;
- do {
- getc(fp);
- i++;
- } while(!feof(fp));
- rewind(fp);
- return (i-1); /* ìÑ ßτ¿Γá∩ ß¿¼ó«½ EOF */
- }
-
- /* ÅÑpѬáτ¬á ¿¼Ñ¡¿ Σá⌐½á */
- void send_file_name(f, port)
- char *f;
- int port;
- {
- do {
- sport(port, '?');
- } while(!kbhit() && !(check_stat(port)&256));
- if(kbhit()) {
- getch();
- exit(1);
- }
- wait(port);
-
- while(*f) {
- sport(port, *f++);
-
- wait(port); /* «ª¿ñá¡¿Ñ »«½πτÑ¡¿∩ ¬ó¿Γ¿pπεΘÑú« íá⌐Γá */
- }
- sport(port, 0); /* ß¿¼ó«½ ¬«¡µá ßΓp«¬¿ */
- }
-
- /* Å«½πτÑ¡¿Ñ ¿¼Ñ¡¿ Σá⌐½á */
- void get_file_name(f, port)
- char *f;
- int port;
- {
-
- while(rport(port)!='?') printf(".");
- sport(port, '.');
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 42 --
-
-
- while((*f=rport(port))) {
- if(*f!='?') {
- f++;
- sport(port, '.');
- }
- }
- sport(port, '.');
- }
-
- /* «ª¿ñá¡¿Ñ «ΓóÑΓá */
- void wait(port)
- int port;
- {
- if(rport(port)!='.') {
- printf("«Φ¿í¬á πßΓá¡«ó½Ñ¡¿∩ ßó∩º¿ \n");
- exit(1);
- }
- }
-
- /* ÅÑpÑñáτá ß¿¼ó«½á ¿º »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá */
- void sport(port, c)
- int port; /* »«pΓ óó«ñá/óδó«ñá */
- char c; /* »ÑpÑñáóáѼδ⌐ ß¿¼ó«½ */
- {
- union REGS r;
-
- r.x.dx = port; /* »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ */
- r.h.al = c; /* »ÑpÑñáóáѼδ⌐ ß¿¼ó«½ */
- r.h.ah = 1; /* »ÑpÑß佬á ß¿¼ó«½á Σπ¡¬µ¿¿ */
- int86(0x14, &r, &r);
- if(r.h.ah & 128) { /* ¬«¡Γp«½∞ 7-ú« í¿Γá */
- printf("Äí¡ápπªÑ¡á «Φ¿í¬á »ÑpÑñáτ¿ ó »«ß½Ññ«óáΓѽ∞¡«¼ »«pΓπ ");
- printf("%d",r.h.ah);
- exit(1);
- }
- }
-
- /* ùΓÑ¡¿Ñ ß¿¼ó«½á ¿º »«pΓá */
- rport(port)
- int port; /* »«pΓ óó«ñá/óδó«ñá */
- {
- union REGS r;
- /* Ī¿ñá¡¿Ñ »p¿σ«ñá ß¿¼ó«½á */
- while(!(check_stat(port)&256))
- if(kbhit()) { /* óδσ«ñ »« »pÑpδóá¡¿ε «Γ ¬½áó¿áΓπpδ */
- getch();
- exit(1);
- }
-
- r.x.dx = port; /* »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ */
- r.h.ah = 2; /* Σπ¡¬µ¿∩ τΓÑ¡¿∩ ß¿¼ó«½á */
- int86(0x14, &r, &r);
- if(r.h.ah & 128)
- printf("é »«ß½Ññ«óáΓѽ∞¡«¼ »«pΓπ «í¡ápπªÑ¡á «Φ¿í¬á τΓÑ¡¿∩");
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 43 --
-
-
- return r.h.al;
- }
-
- /* Åp«óÑp¬á ß«ßΓ«∩¡¿∩ »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá */
- check_stat(port)
- int port; /* »«pΓ óó«ñá/óδó«ñá */
- {
- union REGS r;
-
- r.x.dx = port; /* »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ */
- r.h.ah = 3; /* τΓÑ¡¿Ñ ß«ßΓ«∩¡¿∩ */
- int86(0x14, &r, &r);
- return r.x.ax;
- }
-
- /* ¿¡¿µ¿á½¿ºáµ¿∩ »«pΓá ß »ápá¼ÑΓpἿ:
- ߬«p«ßΓ∞ »ÑpÑñáτ¿ 9600 í«ñ, ñóá ßΓ«»-í¿Γá,
- ¬«¡Γp«½∞ ¡á τÑΓ¡«ßΓ∞ ó䬽., 8 í¿Γ ñá¡¡δσ.
- */
- void port_init(port)
- int port;
- {
- union REGS r;
-
- r.x.dx = port; /* »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ */
- r.h.ah = 0; /* Σπ¡¬µ¿∩ ¿¡¿µ¿á½¿ºáµ¿¿ »«pΓá*/
- r.h.al = 231; /* ¬«ñ ¿¡¿µ¿á½¿ºáµ¿¿ - ß¼. óδΦÑ */
- int86(0x14, &r, &r);
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 44 --
-
-
- çÇâÉôçèÇ ôäÇïàìì¢ò öÇëïÄé é ôçàï æàÆê
- -----------------------------------------------------------------
-
- ä½∩ Γ«ú«, τΓ«íδ páí«τá∩ ßΓᡵ¿∩ ¿¡¿µ¿¿p«óá½á ΓpÑí«óá¡¿∩ ¡á
- »«½πτÑ¡¿Ñ Σá⌐½á ¿º Σá⌐½«ó«ú« ßÑαóÑαá ¿ Ñú« ºáúpπº¬π, ΓpÑíπÑΓß∩
- ó맮ó ߻ѵ¿á½∞¡«⌐ »p«úpá¼¼δ. ¥Γá »p«úpá¼¼á óδºδóáÑΓß∩ »« ¿¼Ñ¡¿
- GET ¿ óδ»«½¡∩ÑΓß∩ páí«τÑ⌐ ßΓᡵ¿Ñ⌐, ¬«Γ«pá∩ ¡πªñáÑΓß∩ ó ñá¡¡δσ.
- éδ ¼«ªÑΓÑ «púá¡¿º«óáΓ∞ ó맮ó φΓ«⌐ »p«úpá¼¼δ ¬á¬ ¬«¼á¡ñδ
- páßΦ¿pÑ¡¡«ú« ¡áí«pá ¬«¼á¡ñ DOS. Äß¡«ó¡«⌐ Σ«p¼«⌐ ó맮óá »p«úpá¼¼δ
- GET ∩ó½∩ÑΓß∩ ß½ÑñπεΘ¿⌐:
-
- GET <¿¼∩_Σá⌐½á>
-
- úñÑ <¿¼∩_Σá⌐½á> - ¿¼∩ ºáúpπªáѼ«ú« Σá⌐½á.
-
- Åp«µÑßß Σπ¡¬µ¿«¡¿p«óá¡¿∩ Σπ¡¬µ¿¿ GET ¿¼ÑÑΓ ñóá «Γ½¿τ¿∩ «Γ
- »p«µÑßßá Σπ¡¬µ¿«¡¿p«óá¡¿∩ ñpπú¿σ Σπ¡¬µ¿⌐, ¿ß»«½∞ºπεΘ¿σ Σá⌐½«óδ⌐
- ßÑαóÑα.
-
- é«-»Ñpóδσ Σπ¡¬µ¿∩ rec_file() »ÑpÑßδ½áÑΓ ¿¼∩ Σá⌐½á ¬«¼»∞εΓÑpπ
- -»«½πτáΓѽε.
-
- é«-óΓ«pδσ, ¿¼∩ »«pΓá ªÑßΓ¬« ¬«ñ¿pπÑΓß∩ ó »«ñ»p«úpá¼¼áσ, á ¡Ñ
- »ÑpÑñáÑΓß∩ »«ñ»p«úpἼἠó ¬áτÑßΓóÑ ápúπ¼Ñ¡Γá, ¬á¬ φΓ« ñѽáÑΓß∩ ó
- Σá⌐½«ó«¼ ßÑαóÑαÑ.
-
- Å«½¡δ⌐ ΓѬßΓ »p«úpá¼¼δ GET »pÑñßΓáó½Ñ¡ ¡¿ªÑ.
-
-
- /* çáúpπº¬á Σá⌐½á ¿º Σá⌐½«ó«ú« ßÑαóÑαá. */
-
- #define PORT 0
-
- #include "dos.h"
- #include "stdio.h"
-
- void sport(), send_file(), rec_file(), send_file_name();
- void get_file_name(), port_init(), wait();
-
- main(argc,argv)
- int argc;
- char *argv[];
- {
- if(argc!=2) {
- printf(" êß»«½∞ºπ⌐ΓÑ Σ«p¼áΓ: GET <¿¼∩ Σá⌐½á>\n");
- exit(1);
- }
-
- port_init(PORT); /* ¿¡¿µ¿á½¿ºáµ¿∩ »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá */
-
- rec_file(argv[1]);
- }
- /*Å«½πτÑ¡¿Ñ Σá⌐½á*/
- void rec_file(fname)
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 45 --
-
-
- char *fname;
- {
- FILE *fp;
- char ch;
- union {
- char c[2];
- unsigned int count;
- } cnt;
-
- printf("çáúpπªáÑΓß∩ Σá⌐½ %s\n", fname);
- remove(fname);
- if(!(fp=fopen(fname,"wb"))) {
- printf("éδσ«ñ¡«⌐ Σá⌐½ ¡Ñ ¼«ªÑΓ íδΓ∞ «Γ¬pδΓ\n");
- exit(1);
- }
-
- sport(PORT, 's'); /*ÅÑpÑñáτá ßÑαóÑαπ ¼áp¬Ñpá
- "ú«Γ«ó ¬ »p¿Ñ¼π Σá⌐½á"*/
- wait(PORT); /* Ī¿ñá¡¿Ñ ú«Γ«ó¡«ßΓ¿ ßÑαóÑαá */
-
- /* Å«½πτÑ¡¿Ñ ñ½¿¡δ Σá⌐½á */
- send_file_name(fname);
-
- sport(PORT, '.'); /* ¬ó¿Γ¿p«óá¡¿Ñ */
- cnt.c[0] = rport(PORT);
- sport(PORT, '.'); /* ¬ó¿Γ¿p«óá¡¿Ñ */
- cnt.c[1] = rport(PORT);
- sport(PORT, '.'); /* ¬ó¿Γ¿p«óá¡¿Ñ */
-
- for(; cnt.count; cnt.count--) {
- ch = rport(PORT);
- putc(ch, fp);
- if(ferror(fp)) {
- printf("«Φ¿í¬á ºá»¿ß¿ ó Σá⌐½ ");
- exit(1);
- }
- sport(PORT, '.'); /* ¬ó¿Γ¿p«óá¡¿Ñ */
- }
- fclose(fp);
- }
-
- /* ÅÑpѬáτ¬á ¿¼Ñ¡¿ Σá⌐½á */
- void send_file_name(f)
- char *f;
- {
- do {
- sport(PORT, '?');
- } while(!kbhit() && !(check_stat(PORT)&256));
- if(kbhit()) {
- getch();
- exit(1);
- }
- wait(PORT);
-
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 46 --
-
-
- while(*f) {
- sport(PORT, *f++);
- wait(PORT);
- }
- sport(PORT, '\0'); /* ß¿¼ó«½ ¬«¡µá ßΓp«¬¿ */
- wait(PORT);
- }
- /*Ī¿ñá¡¿Ñ «ΓóÑΓá (¬ó¿Γ¿p«óá¡¿∩)*/
- void wait(port)
- int port;
- {
- if(rport(port)!='.') {
- printf("«Φ¿í¬á πßΓá¡«ó½Ñ¡¿∩ ßó∩º¿ \n");
- exit(1);
- }
- }
-
- /* ÅÑpÑñáτá ß¿¼ó«½á ¿º »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá */
- void sport(port, c)
- int port; /* »«pΓ óó«ñá/óδó«ñá */
- char c; /* »ÑpÑñáóáѼδ⌐ ß¿¼ó«½ */
- {
- union REGS r;
-
- r.x.dx = port; /* »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ */
- r.h.al = c; /* »ÑpÑñáóáѼδ⌐ ß¿¼ó«½ */
- r.h.ah = 1; /* »ÑpÑß佬á ß¿¼ó«½á Σπ¡¬µ¿¿ */
- int86(0x14, &r, &r);
- if(r.h.ah & 128) { /* ¬«¡Γp«½∞ 7-ú« í¿Γá */
- printf("Äí¡ápπªÑ¡á «Φ¿í¬á »ÑpÑñáτ¿ ó »«ß½Ññ«óáΓѽ∞¡«¼ »«pΓπ ");
- printf("%d",r.h.ah);
- exit(1);
- }
- }
-
- /* ùΓÑ¡¿Ñ ß¿¼ó«½á ¿º »«pΓá */
- rport(port)
- int port; /* »«pΓ óó«ñá/óδó«ñá */
- {
- union REGS r;
-
- /* Ī¿ñá¡¿Ñ »p¿σ«ñá ß¿¼ó«½á */
- while(!(check_stat(port)&256))
- if(kbhit()) {
- getch();
- exit(1);
- }
-
- r.x.dx = port; /* »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ */
- r.h.ah = 2; /* Σπ¡¬µ¿∩ τΓÑ¡¿∩ ß¿¼ó«½á */
- int86(0x14, &r, &r);
- if(r.h.ah & 128)
- printf("ó »«ß½Ññ«óáΓѽ∞¡«¼ »«pΓπ «í¡ápπªÑ¡á «Φ¿í¬á τΓÑ¡¿∩");
- return r.h.al;
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 47 --
-
-
- }
-
- /* Åp«óÑp¬á ß«ßΓ«∩¡¿∩ »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá */
- check_stat(port)
- int port; /* »«pΓ óó«ñá/óδó«ñá */
- {
- union REGS r;
-
- r.x.dx = port; /* »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ */
- r.h.ah = 3; /* τΓÑ¡¿Ñ ß«ßΓ«∩¡¿∩ */
- int86(0x14, &r, &r);
- return r.x.ax;
- }
-
- /* ¿¡¿µ¿á½¿ºáµ¿∩ »«pΓá ß »ápá¼ÑΓpἿ:
- ߬«p«ßΓ∞ »ÑpÑñáτ¿ 9600 í«ñ, ñóá ßΓ«»-í¿Γá,
- ¬«¡Γp«½∞ ¡á τÑΓ¡«ßΓ∞ ó䬽., 8 í¿Γ ñá¡¡δσ.
- */
- void port_init(port)
- int port;
- {
- union REGS r;
-
- r.x.dx = port; /* »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ */
- r.h.ah = 0; /* Σπ¡¬µ¿∩ ¿¡¿µ¿á½¿ºáµ¿¿ »«pΓá*/
- r.h.al = 231; /* ¬«ñ ¿¡¿µ¿á½¿ºáµ¿¿ - ß¼. óδΦÑ */
- int86(0x14, &r, &r);
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 48 --
-
-
- òÉÇìàìêà öÇëïÄé
- -----------------------------------------------------------------
-
- é í«½∞Φ¿¡ßΓóÑ ßÑΓÑ⌐ Σá⌐½δ ¼«úπΓ ¡Ñ Γ«½∞¬« »ÑpÑßδ½áΓ∞ß∩ ó
- πºÑ½ ßÑΓ¿ «Γ Σá⌐½«ó«ú« ßÑαóÑαá ñ½∩ «ípáí«Γ¬¿, ¡« ¿ »ÑpÑßδ½áΓ∞ß∩ ó
- «ípáΓ¡«¼ »«p∩ñ¬Ñ - «Γ áí«¡Ñ¡Γá ßÑΓ¿ ó ßÑαóÑα ñ½∩ σpá¡Ñ¡¿∩. ä½∩
- »«ññÑpª¬¿ φΓ¿σ 󫺼«ª¡«ßΓÑ⌐ íδ½á páºpáí«Γá¡á »p«úpá¼¼á PUT.
- Åp«úpá¼¼á PUT óδ»«½¡∩ÑΓß∩ ó πº½Ñ ßÑΓ¿ ¡á páí«τÑ⌐ ßΓᡵ¿¿ ¿
- «ßπΘÑßΓó½∩ÑΓ »ÑpѬáτ¬π Σá⌐½«ó ¿º πº½á ßÑΓ¿ ó Σá⌐½«óδ⌐ ßÑαóÑα.
- êß»«½∞º«óá¡¿Ñ φΓ«⌐ »p«úpá¼¼δ á¡á½«ú¿τ¡« ¿ß»«½∞º«óá¡¿ε »p«úpá¼¼δ
- GET (ºá ¿ß¬½ετÑ¡¿Ñ¼ Γ«ú«, τΓ« óδ»«½¡∩ѼδÑ ¿¼¿ Σπ¡¬µ¿¿ »p∩¼«
- »p«Γ¿ó«»«½«ª¡δ). é«Γ «ß¡«ó¡«⌐ Σ«p¼áΓ ó맮óá »p«úpá¼¼δ:
-
- PUT <¿¼∩_Σá⌐½á>
-
- Åp«µÑßß óδ»«½¡Ñ¡¿∩ »p«úpá¼¼δ PUT ß«óÑpΦÑ¡¡« ¿ñÑ¡Γ¿τÑ¡
- »p«µÑßßπ óδ»«½¡Ñ¡¿∩ »p«úpá¼¼δ, pÑΦáεΘÑ⌐ ºáñáτπ »ÑpѬáτ¬¿
- »p«úpá¼¼¡δσ Σá⌐½«ó.
-
- Å«½¡δ⌐ ΓѬßΓ »p«úpá¼¼δ PUT »p¿óÑñÑ¡ ¡¿ªÑ.
-
-
- #define PORT 0
-
- #include "dos.h"
- #include "stdio.h"
-
- unsigned int filesize();
- void sport(), send_file(), send_file_name();
- void wait(), port_init(), wait();
-
- main(argc,argv)
- int argc;
- char *argv[];
- {
- if(argc!=2) {
- printf(" êß»«½∞ºπ⌐ΓÑ Σ«p¼áΓ GET <¿¼∩ Σá⌐½á>\n");
- exit(1);
- }
-
- port_init(PORT); /* ¿¡¿µ¿á½¿ºáµ¿∩ »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá */
-
- send_file(argv[1]);
- }
-
- /* »ÑpѬáτ¬á ߻ѵ¿Σ¿µ¿p«óá¡¡«ú« Σá⌐½á */
- void send_file(fname)
- char *fname;
- {
- FILE *fp;
- char ch;
- union {
- char c[2];
- unsigned int count;
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 49 --
-
-
- } cnt;
-
- if(!(fp=fopen(fname,"rb"))) {
- printf("éσ«ñ¡«⌐ Σá⌐½ ¡Ñ ¼«ªÑΓ íδΓ∞ «Γ¬pδΓ\n");
- exit(1);
- }
- printf("ÅÑpÑßδ½áÑΓß∩ Σá⌐½ %s\n", fname);
-
- /* ÆpÑíπÑΓß∩ Σá⌐½«óδ⌐ ßÑαóÑα.*/
- sport(PORT, 'r'); /* ¼áp¬Ñp ú«Γ«ó¡«ßΓ¿ ¬ »ÑpÑßδ½¬Ñ Σá⌐½á
- ¿º πº½á */
- wait(PORT);/*«ª¿ñá¡¿Ñ ú«Γ«ó¡«ßΓ¿ Σá⌐½«ó«ú« ßÑαóÑαá.*/
-
- send_file_name(fname); /* »ÑpÑñáτá ¿¼Ñ¡¿ Σá⌐½á */
-
- if(rport(PORT)!='.') {
- printf("æí«⌐ »p¿ páí«ΓÑ ß πñá½Ñ¡¡δ¼ Σá⌐½«¼\n");
- exit(1);
- }
-
- /* óδτ¿ß½Ñ¡¿Ñ pẼÑpá óδσ«ñ¡«ú« Σá⌐½á */
- cnt.count = filesize(fp);
-
- /* »ÑpÑñáτá pẼÑpá Σá⌐½á*/
- sport(PORT, cnt.c[0]);
- wait(PORT);
- sport(PORT, cnt.c[1]);
-
- do {
- ch = getc(fp);
- if(ferror(fp)) {
- printf(" ÄΦ¿í¬á τΓÑ¡¿∩ óδσ«ñ¡«ú« Σá⌐½á\n");
- break;
- }
-
- /* «ª¿ñá¡¿Ñ ú«Γ«ó¡«ßΓ¿ »«pΓá-»p¿Ñ¼¡¿¬á */
- if(!feof(fp)) {
- wait(PORT);
- sport(PORT, ch);
- }
- } while(!feof(fp));
- wait(PORT);/* τΓÑ¡¿Ñ »«ß½Ññ¡Ñ⌐ »«pµ¿¿ ¿º »«pΓá*/
- fclose(fp);
- }
-
- /* 髺ópáΘÑ¡¿Ñ º¡áτÑ¡¿∩ ñ½¿¡δ Σá⌐½á ó íá⌐Γáσ */
- unsigned int filesize(fp)
- FILE *fp;
- {
- unsigned long int i;
-
- i = 0;
- do {
- getc(fp);
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 50 --
-
-
- i++;
- } while(!feof(fp));
- rewind(fp);
- return (i-1); /* ìÑ ßτ¿Γá∩ ß¿¼ó«½ EOF */
- }
-
- /* ÅÑpѬáτ¬á ¿¼Ñ¡¿ Σá⌐½á */
- void send_file_name(f)
- char *f;
- {
- do {
- sport(PORT, '?');
- } while(!kbhit() && !(check_stat(PORT)&256));
- if(kbhit()) {
- getch();
- exit(1);
- }
- wait(PORT);
-
- while(*f) {
- sport(PORT, *f++);
- wait(PORT);
- }
- sport(PORT, '\0'); /* ß¿¼ó«½ ¬«¡µá ßΓp«¬¿ */
- wait(PORT);
- }
-
- /* «ª¿ñá¡¿Ñ «ΓóÑΓá */
- void wait(port)
- int port;
- {
- if(rport(port)!='.') {
- printf("ÄΦ¿í¬á πßΓá¡«ó½Ñ¡¿∩ ßó∩º¿ \n");
- exit(1);
- }
- }
-
- /* ÅÑpÑñáτá ß¿¼ó«½á ¿º »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá */
- void sport(port, c)
- int port; /* »«pΓ óó«ñá/óδó«ñá */
- char c; /* »ÑpÑßδ½áѼδ⌐ ß¿¼ó«½ */
- {
- union REGS r;
-
- r.x.dx = port; /* »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ */
- r.h.al = c; /* ß¿¼ó«½ ñ½∩ »ÑpÑñáτ¿ */
- r.h.ah = 1; /* Σπ¡¬µ¿∩ »ÑpÑñáτ¿ ß¿¼ó«½á */
- int86(0x14, &r, &r);
- if(r.h.ah & 128) {
- printf("ÄΦ¿í¬á »ÑpÑñáτ¿ ó »«ß½Ññ«óáΓѽ∞¡«¼ »«pΓπ %d",r.h.ah);
- exit(1);
- }
- }
-
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 51 --
-
-
- /* τΓÑ¡¿Ñ ß¿¼ó«½á ¿º »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá */
- rport(port)
- int port; /* »«pΓ óó«ñá/óδó«ñá */
- {
- union REGS r;
-
- /* «ª¿ñá¡¿Ñ ß¿¼ó«½á */
- while(!(check_stat(PORT)&256))
- if(kbhit()) {
- getch();
- exit(1);
- }
-
- r.x.dx = port; /* »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ */
- r.h.ah = 2; /* Σπ¡¬µ¿∩ τΓÑ¡¿∩ ß¿¼ó«½á */
- int86(0x14, &r, &r);
- if(r.h.ah & 128)
- printf(" «Φ¿í¬á τΓÑ¡¿∩ ó »«ß½Ññ«óáΓѽ∞¡«¼ »«pΓπ ");
- return r.h.al;
- }
-
- /* ¬«¡Γp«½∞ ß«ßΓ«∩¡¿∩ »«ß½Ññ«óáΓѽ∞¡«ú« »«pΓá */
- cheek_stat(port)
- int port; /* »«pΓ óó«ñá/óδó«ñá */
- {
- union REGS r;
-
- r.x.dx = port; /* »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ */
- r.h.ah = 3; /* τΓÑ¡¿Ñ ß«ßΓ«∩¡¿∩ */
- int86(0x14, &r, &r);
- return r.x.ax;
- }
-
- /* ¿¡¿µ¿á½¿ºáµ¿∩ »«pΓá »ápá¼ÑΓpἿ:
- ߬«p«ßΓ∞ »ÑpÑñáτ¿ - 9600 í«ñ,
- ¬«¡Γp«½∞ τÑΓ¡«ßΓ¿ ó䬽. ,
- ó«ßѼ∞ í¿Γ ñá¡¡δσ,
- ñóá ºáóÑpΦáεΘ¿σ ßΓ«»-í¿Γá.
- */
- void port_init(port)
- int port;
- {
- union REGS r;
-
- r.x.dx = port; /* »«ß½Ññ«óáΓѽ∞¡δ⌐ »«pΓ */
- r.h.ah = 0; /* Σπ¡¬µ¿∩ ¿¡¿µ¿á½¿ºáµ¿¿ »«pΓá*/
- r.h.al = 231; /* ¬«ñ ¿¡¿µ¿á½¿ºáµ¿¿ - ß¼. óδΦÑ */
- int86(0x14, &r, &r);
- }
-
-
-
-
-
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 52 --
-
-
- êæÅÄï£çÄéÇìêà ïéæ
- -----------------------------------------------------------------
-
- ä½∩ «íÑß»ÑτÑ¡¿∩ Σπ¡¬µ¿«¡¿p«óá¡¿∩ ïéæ ¡Ñ«íσ«ñ¿¼« ºá»πßΓ¿Γ∞
- Σá⌐½«óδ⌐ ßÑαóÑα ¡á µÑ¡Γpá½∞¡«¼ ¬«¼»∞εΓÑpÑ. èáªñá∩ páí«τá∩ ßΓᡵ¿∩
- - áí«¡Ñ¡Γ ßÑΓ¿ ñ«½ª¡á ¿¼ÑΓ∞ ó ß«ßΓáóÑ ßó«Ñú« »p«úpἡ«ú«
- «íÑß»ÑτÑ¡¿∩ Σá⌐½δ GET.EXE ¿ PUT.EXE. Åp¿ ¡Ñ«íσ«ñ¿¼«ßΓ¿ »«½πτ¿Γ∞
- Σá⌐½, óó«ñ¿Γß∩ ¬«¼á¡ñá GET, »p¿ ¡Ñ«íσ«ñ¿¼«ßΓ¿ ß«σpá¡¿Γ∞ Σá⌐½ ó«
- ó¡ÑΦ¡Ñ⌐ »á¼∩Γ¿ Σá⌐½«ó«ú« ßÑαóÑαá óó«ñ¿Γß∩ ¬«¼á¡ñá PUT.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó
- â½áóá VI -- 53 --
-
-
- æÄéàÉÿàìæÆéÄéÇìêà ïéæ
- -----------------------------------------------------------------
-
- Äñ¡¿¼ ¿º »Ñpóδσ πß«óÑpΦÑ¡ßΓó«óá¡¿⌐ «»¿ßá¡¡«⌐ ºñÑß∞
- »p«ßΓÑ⌐ΦÑ⌐ ïéæ ∩ó½∩ÑΓß∩ «íÑß»ÑτÑ¡¿Ñ ñ«»«½¡¿Γѽ∞¡«⌐ 󫺼«ª¡«ßΓ¿
- ñ½∩ páí«τ¿σ ßΓᡵ¿⌐ ßÑΓ¿ «»Ñp¿p«óáΓ∞ ß ¬áΓὫú«¼ Σá⌐½«ó«⌐ ß¿ßΓѼδ
- µÑ¡Γpá½∞¡«ú« ¬«¼»∞εΓÑpá. ä½∩ φΓ«⌐ µÑ½¿ ¼«ªÑΓ íδΓ∞ ñ«íáó½Ñ¡á
- ¬«¼á¡ñá 'd' (directory) ó ¡áí«p ¬«¼á¡ñ¡δσ »p¿¼¿Γ¿ó«ó ßÑΓ¿. é
- »p«ßΓÑ⌐ΦѼ ß½πτáÑ «ípáí«Γ¬á ¬áΓὫúá ßó«ñ¿Γß∩ ¬ Ñú« óδñáτÑ ó ó¿ñÑ
- »ÑpÑτ¡∩ Σá⌐½«ó ΓѬπΘÑ⌐ ñ¿pÑ¬Γ«p¿¿. Å«φΓ«¼π, ¿ßσ«ñ∩ ¿º
- óδΦÑ»p¿óÑñÑ¡¡«ú« »«½«ªÑ¡¿∩, ñ«íáó½Ñ¡¿Ñ ¬«¼á¡ñδ 'd' »«ΓpÑíπÑΓ
- ß««ΓóÑΓßΓóπεΘÑú« ñ«»«½¡Ñ¡¿∩ «ß¡«ó¡«ú« µ¿¬½á páí«Γδ Σá⌐½«ó«ú«
- ßÑαóÑαá ß µÑ½∞ε «íÑß»ÑτÑ¡¿∩ óδñáτ¿ ¬áΓὫúá »p¿ »ÑpÑñáτÑ
- áí«¡Ñ¡Γ«¼ φΓ«⌐ ¬«¼á¡ñδ. ÉѺπ½∞ΓáΓ óδ»«½¡Ñ¡¿∩ ¬«¼á¡ñδ «Γ«ípáªáÑΓß∩
- «íδτ¡δ¼ ß»«ß«í«¼ ¡á φ¬pá¡Ñ Γá¬, íπñΓ« óδ óδ»«½¡¿½¿ ¬«¼á¡ñπ dir ¡á
- ßó«Ñ¼ ¬«¼»∞εΓÑpÑ.
-
- ä«ó«½∞¡« »p¿ó½Ñ¬áΓѽ∞¡« óδú½∩ñ¿Γ páßΦ¿pÑ¡¿Ñ ¡áí«pá ¬«¼á¡ñ¡δσ
- »p¿¼¿Γ¿ó«ó ßÑΓ¿ ºá ßτÑΓ ó¡ÑßÑ¡¿∩ ó ¡Ñú« ¬«¼á¡ñδ RUN, »«ºó«½∩εΘÑ⌐
- áóΓ«¡«¼¡« »ÑpÑßδ½áΓ∞ ¿º Σá⌐½«ó«ú« ßÑαóÑαá óδ»«½¡∩Ѽδ⌐ Σá⌐½,
- pẼÑΘáΓ∞ Ñú« ó »á¼∩Γ¿ páí«τÑ⌐ ßΓᡵ¿¿ ¿ ºá»π߬áΓ∞.
-
- ¥½Ñ¬Γp«¡¡á∩ »«τΓá, ß »«¼«Θ∞ε ¬«Γ«p«⌐ »«½∞º«óáΓѽ¿ ¼«úπΓ
- «í¼Ñ¡¿óáΓ∞ß∩ ñpπú ß ñpπú«¼ ß««íΘÑ¡¿∩¼¿, ∩ó½∩ÑΓß∩ «ñ¡¿¼ ¿º
- »Ñpß»Ñ¬Γ¿ó¡δσ ¡á»páó½Ñ¡¿⌐ ß«óÑpΦÑ¡ßΓó«óá¡¿∩ ßÑΓ¿.
-
- é ¬«¡Ñτ¡«¼ ¿Γ«úÑ óδ ¼«ªÑΓÑ «íÑß»Ñτ¿Γ∞ ºáΘ¿Γπ óßÑ⌐ óáΦÑ⌐
- ß¿ßΓÑ¼δ »πΓѼ páºpÑΦÑ¡¿∩ ºáúpπº¬¿ ñ½∩ ¬áªñ«ú« πº½á ßÑΓ¿ (páí«τÑ⌐
- ßΓᡵ¿¿) ½¿Φ∞ «»pÑñѽѡ¡δσ Σá⌐½«ó ñ½∩ ºáΘ¿Γδ óßÑ⌐ ß«ó«¬π»¡«ßΓ¿.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- "C" ñ½∩ »α«ΣÑßß¿«¡á½∞¡δσ »α«úαá¼¼¿ßΓ«ó