home *** CD-ROM | disk | FTP | other *** search
- ═══════════════════════════════════════════════════════════════════════════
- `ñ`¼Åα¿½«ªÑ¡¿Ñ G. Ä»Γ¿¼¿ºáµ¿∩ ¬«ñá `*
- ---------------------------------------------------------------------------
-
- Åα«µÑßß«α i486 ß«ó¼ÑßΓ¿¼ »« ¬«ñπ ¿ »« ñá¡¡δ¼ ß »α«µÑßß«αἿ 386(TM) DX ¿
- SX. ü뫨 ñ«íáó½Ñ¡δ óßÑú« ½¿Φ∞ Γα¿ ¬«¼á¡ñδ πα«ó¡∩ »α¿¬½áñ¡«ú«
- »α«úαá¼¼¿α«óá¡¿∩, ¬«Γ«αδÑ »«½Ñº¡δ ó ߻ѵ¿á½∞¡δσ ß¿Γπᵿ∩σ. ïεíá∩
- ßπΘÑßΓóπεΘá∩ »α¿¬½áñ¡á∩ »α«úαá¼¼á ñ½∩ »α«µÑßß«αá 8086/8088, 80286 ¿ 386
- ¼«ªÑΓ íδΓ∞ óδ»«½¡Ñ¡á ¡á »α«µÑßß«αÑ i486 ¡Ñ¼Ññ½Ñ¡¡«, íѺ óß∩¬«⌐
- ñ«»«½¡¿Γѽ∞¡«⌐ ¼«ñ¿Σ¿¬áµ¿¿ ¿ »ÑαѬ«¼»¿½∩µ¿¿. ïεí«⌐ ¬«¼»¿½∩Γ«α, ¬«Γ«αδ⌐
- úÑ¡Ñα¿απÑΓ ¬«ñ ñ½∩ »α«µÑßß«α«ó ßѼÑ⌐ßΓóá 386, íπñÑΓ Γá¬ªÑ úÑ¡Ñα¿α«óáΓ∞
- ¬«ñ, ¬«Γ«αδ⌐ íπñÑΓ óδ»«½¡∩Γ∞ß∩ ¡á »α«µÑßß«αÑ i486 íѺ ¬á¬«⌐-½¿í«
- ¼«ñ¿Σ¿¬áµ¿¿.
- ÆÑ¼ ¡Ñ ¼Ñ¡ÑÑ, ßπΦÑßΓóπÑΓ ¡Ñ߬«½∞¬« ß»«ß«í«ó «»Γ¿¼¿ºáµ¿¿ ¬«ñá, ¬«Γ«αδÑ
- ßñѽáεΓ óδ»«½¡Ñ¡¿Ñ »α¿¬½áñ¡δσ »α«úαá¼¼ ¡á »α«µÑßß«αÑ i486 í«½ÑÑ íδßΓαδ¼,
- »α¿ »«¼«Θ¿ óßÑú« ½¿Φ∞ ¼¿¡¿¼á½∞¡δσ ¿º¼Ñ¡Ñ¡¿⌐ ¿½¿ ó««íΘÑ íѺ« óß∩¬¿σ
- ¿º¼Ñ¡Ñ¡¿⌐ »« «Γ¡«ΦÑ¡¿ε ¬ ¿σ αÑ὿ºáµ¿¿ ñ½∩ »α«µÑßß«α«ó 386 DX ¿½¿ SX, ºá
- ¿ß¬½ετÑ¡¿Ñ¼, íδΓ∞ ¼«ªÑΓ, αẽ¿τ¿⌐ ó αẼÑαÑ ¬«ñá. ¥Γ¿ ß»«ß«íδ ß½ÑñπÑΓ
- »α¿¼Ñ¡∩Γ∞ »« «Γ¡«ΦÑ¡¿ε ¬ óδí«απ »«ß½Ññ«óáΓѽ∞¡«ßΓ¿ ¬«¼á¡ñ ¿ ¬«¼á¡ñá¼
- π»αáó½Ñ¡¿∩ ñ½∩ Γ«ú«, τΓ«íδ »«½πτ¿Γ∞ »αÑ¿¼πΘÑßΓóá óßΓα«Ñ¡¡«ú« ¼«ñπ½∩ αѪ¿¼á
- ¬«¡óÑ⌐Ñα¡«⌐ «íαáí«Γ¬¿ »α«µÑßß«αá i486 ¿ í«½∞Φ«⌐ ¬φΦ-»á¼∩Γ¿, αáß»«½«ªÑ¡¡«⌐
- ¡á «ñ¡«⌐ ¼¿¬α«ßσѼÑ.
-
-
- `¬`ñG.1 ÉѪ¿¼δ áñαÑßᵿ¿ `*
-
- Å«ñ«í¡« »α«µÑßß«απ 386, »α«µÑßß«απ i486 ¡Ñ«íσ«ñ¿¼ ñ«»«½¡¿Γѽ∞¡δ⌐ Γá¬Γ ñ½∩
- úÑ¡Ñαᵿ¿ ¿ß»«½¡¿Γѽ∞¡δσ áñαÑß«ó, ¬«úñá ¿ß»«½∞ºπÑΓß∩ ¿¡ñѬߡδ⌐ αÑú¿ßΓα.
- ü«½ÑÑ Γ«ú«, Ñß½¿ ¿ß»«½∞ºπÑΓß∩ «ñ¡á ¿¡ñѬߡá∩ ¬«¼»«¡Ñ¡Γá (Γ.Ñ. «ñ¡«óαѼѡ¡«
- ¡Ñ ¿ß»«½∞ºπεΓß∩ íẫóδ⌐ αÑú¿ßΓα ¿ ¿¡ñѬߡδ⌐ αÑú¿ßΓα), ¿ ¡ÑΓ ¡Ñ«íσ«ñ¿¼«ßΓ¿
- ó ¼áßΦΓáí¿α«óá¡¿¿, í«½ÑÑ íδßΓαδ¼ ∩ó½∩ÑΓß∩ ¿ß»«½∞º«óá¡¿Ñ αÑú¿ßΓαá ó
- ¬áτÑßΓóÑ íẫó«ú«, á ¡Ñ ó ¬áτÑßΓóÑ ¿¡ñѬߡ«ú«. ìá»α¿¼Ñα :
-
- mov eax, [esi] ; ¿ß»«½∞º«óá¡¿Ñ esi ó ¬áτÑßΓóÑ íáºδ
- mov eax, [esi*] ; ¿ß»«½∞º«óá¡¿Ñ esi ó ¬áτÑßΓóÑ ¿¡ñѬßá, 1
- ; Γá¬Γ ñ«»«½¡¿Γѽ∞¡«
-
- àß½¿ ¿ß»«½∞ºπεΓß∩ ¿ íáºá, ¿ ¿¡ñѬß, ¿½¿ ¿ß»«½∞ºπÑΓß∩ ¼áßΦΓáí¿α«óá¡¿Ñ
- ¿¡ñѬßá, í«½ÑÑ íδßΓαδ¼ ß»«ß«í«¼ áñαÑßᵿ¿ ∩ó½∩ÑΓß∩ ¿ß»«½∞º«óá¡¿Ñ
- ¬«¼í¿¡¿α«óá¡¡«ú« ¼ÑΓ«ñá, ñáªÑ Ñß½¿ φΓ« ¿ ºá⌐¼ÑΓ «ñ¿¡ ñ«»«½¡¿Γѽ∞¡δ⌐
- Γá¬Γ«óδ⌐ µ¿¬½ »α«µÑßß«αá »α¿ óδ»«½¡Ñ¡¿¿.
- è«úñá αÑú¿ßΓα ¿ß»«½∞ºπÑΓß∩ ó ¬áτÑßΓóÑ íẫó«⌐ ¬«¼»«¡Ñ¡Γδ, Γ«úñá
- ¿ß»«½∞ºπÑΓß∩ ñ«»«½¡¿Γѽ∞¡δ⌐ Γá¬Γ«óδ⌐ µ¿¬½, Ñß½¿ φëà αÑú¿ßΓα ∩ó½∩½ß∩
- »α¿Ñ¼¡¿¬«¼ ó ¬«¼á¡ñÑ, ¡Ñ»«ßαÑñßΓóÑ¡¡« óδ»«½¡∩óΦÑ⌐ß∩ »ÑαÑñ ñá¡¡«⌐ ¬«¼á¡ñ«⌐
- (»αÑñ»«½áúáÑΓß∩, τΓ« óßÑ «»Ñαᵿ¿ πªÑ ¡áσ«ñ∩Γßá ó »αÑñóáα¿Γѽ∞¡« ß«ºñá¡¡«⌐
- «τÑαÑñ¿). Å«φΓ«¼π ñ½∩ »«½πτÑ¡¿∩ ¡á¿í«½∞ΦÑú« íδßΓα«ñÑ⌐ßΓó¿∩ ñóÑ ¬«¼á¡ñδ
- ñ«½ª¡δ αáºñѽ∩Γ∞ß∩ »« ¬αá⌐¡Ñ⌐ ¼ÑαÑ ÑΘÑ «ñ¡«⌐ ¬«¼á¡ñ«⌐. ìá»α¿¼Ñα:
-
- add esi, eax ; esi - αÑú¿ßΓα-»α¿Ñ¼¡¿¬
- mov eax, [esi] ; esi - íẫóδ⌐ αÑú¿ßΓα, 1 Γá¬Γ ñ«»«½¡¿Γѽ∞¡«
-
- æπΘÑßΓóπεΓ Γá¬ªÑ ¿ ñαπú¿Ñ ¡Ñ∩ó¡δÑ ¿½¿ ¬«ßóÑ¡¡δÑ ¼ÑΓ«ñδ ¿ß»«½∞º«óá¡¿∩
- »α¿Ñ¼¡¿¬á ¿ íẫó«ú« αÑú¿ßΓαá, ó »Ñαóπε «τÑαÑñ∞ αÑú¿ßΓαá π¬áºáΓѽ∩ ßΓѬá
- ESP. ÉÑú¿ßΓα ESP ∩ó½∩ÑΓß∩ ¡Ñ∩ó¡«⌐ íẫ⌐ óßÑσ ¬«¼á¡ñ Γ¿»á PUSH/POP/RET ¿ «¡
- ªÑ ∩ó½∩ÑΓß∩ ¡Ñ∩ó¡δ¼ »α¿Ñ¼¡¿¬«¼ ó ¬«¼á¡ñáσ CALL/ENTER/LEAVE/RET/PUSH/POP.
- ü«½ÑÑ Γ«ú«, ¬«¼á¡ñá LEAVE, ß½ÑñπεΘáá ¡Ñ»«ßαÑñßΓóÑ¡¡« ºá ¬«¼á¡ñ«⌐ RET,
- íπñÑΓ ¿ß»«½∞º«óáΓ∞ «ñ¿¡ ñ«»«½¡¿Γѽ∞¡δ⌐ µ¿¬½. ì« Ñß½¿ ¬«¼á¡ñδ LEAVE ¿ RET
- αÑ«αúá¡¿º«óá¡δ Γᬿ¼ «íαẫ¼, τΓ« «ñ¡π «Γ ñαπú«⌐ «Γñѽ∩ÑΓ ¬á¬á∩-Γ« ñαπúá∩
- ¬«¼á¡ñá, ¡Ñ ΓαÑíπÑΓß∩ ¡¿¬á¬¿σ ñ«»«½¡¿Γѽ∞¡δσ Γá¬Γ«ó. (漫Γα¿ Γá¬ªÑ ñαπú¿Ñ
- αѬ«¼Ñ¡ñᵿ¿, ¬áßáεΘ¿Ñß∩ ¬«¼á¡ñδ LEAVE).
- ìÑΓ ¡¿¬á¬«⌐ ¡Ñ«íσ«ñ¿¼«ßΓ¿ αáºñѽ∩Γ∞ »«ß½Ññ«óáΓѽ∞¡δÑ ¬«¼á¡ñδ PUSH/POP.
- Åα«µÑßß«α i486 ñ«»π߬áÑΓ Γá¬πε »«ß½Ññ«óáΓѽ∞¡«ßΓ∞ íѺ ¿ß»«½∞º«óá¡¿∩
- ñ«»«½¡¿Γѽ∞¡«ú« Γá¬Γá.
- éßÑ Γá¬¿Ñ »αÑ«íαẫóá¡¿∩ »«ß½Ññ«óáΓѽ∞¡«ßΓ¿ ¬«¼á¡ñ ¡Ñ ó½¿∩εΓ ¡á óδ»«½¡Ñ¡¿Ñ
- »α«úαá¼¼δ ¡á 386 »α«µÑßß«αÑ.
- Åα«µÑßß«α i486 Γá¬ªÑ ΓαÑíπÑΓ ñ«»«½¡¿Γѽ∞¡«ú« Γá¬Γá ñ½∩ óδ»«½¡Ñ¡¿∩ ¬«¼á¡ñδ,
- ¬«Γ«αá∩ ¿¼ÑÑΓ «ñ¡«óαѼѡ¡« ¿ «»Ñαá¡ñ - ¡Ñ»«ßαÑñßΓóÑ¡¡«Ñ º¡áτÑ¡¿Ñ, ¿
- «»Ñαá¡ñ, ºáñá¡¡δ⌐ ¬á¬ ß¼ÑΘÑ¡¿Ñ ó »á¼∩Γ¿. ìá»α¿¼Ñα :
-
- mov π¬áºáΓѽ∞ ¡á ñó«⌐¡«Ñ ß½«ó« foo, 1234h ; «ñ¡«óαѼѡ¡« ¿
- ¡Ñ»«ßαÑñßΓóÑ¡¡«Ñ º¡áτÑ¡¿Ñ, ¿ «»Ñαá¡ñ - ; ß¼ÑΘÑ¡¿Ñ ó »á¼∩Γ¿.
- mov π¬áºáΓѽ∞ ¡á ñó«⌐¡«Ñ ß½«ó« baz, 1234h
- mov [ebp-200], 1234h
-
- è«úñá ΓαÑíπÑΓß∩ ¿ß»«½∞º«óáΓ∞ ¬«¡ßΓá¡Γδ, í«½ÑÑ φΣΣÑ¬Γ¿ó¡« ¿ß»«½∞º«óáΓ∞
- ¡Ñ»«ßαÑñßΓóÑ¡¡δÑ º¡áτÑ¡¿∩ ¬«¡ßΓá¡Γ ó¼ÑßΓ« »αÑñóáα¿Γѽ∞¡«⌐ ºáúαπº¬¿
- ¬«¡ßΓá¡Γ ó αÑú¿ßΓαδ. ì« Ñß½¿ «ñ¡á ¿ Γá ªÑ ¬«¡ßΓá¡Γá ¿ß»«½∞ºπÑΓß∩ í«½∞ΦÑ,
- τѼ «ñ¿¡ αáº, Γ« íδßΓαÑÑ íπñÑΓ ºáúαπº¿Γ∞ º¡áτÑ¡¿Ñ φΓ«⌐ ¬«¡ßΓá¡Γδ ó αÑú¿ßΓα
- ¿ ºáΓѼ ¼¡«ú« αẠ¿ß»«½∞º«óáΓ∞ φëà αÑú¿ßΓα. ¥Γá «»Γ¿¼¿ºáµ¿∩ ¡Ñ ó½¿∩ÑΓ ¡á
- óδ»«½¡Ñ¡¿Ñ »α«úαá¼¼δ ¡á 386 »α«µÑßß«αÑ. æ½ÑñπεΘá∩ »«ß½Ññ«óáΓѽ∞¡«ßΓ∞
- ñÑ⌐ßΓó¿⌐ óδ»«½¡∩ÑΓß∩ íδßΓαÑÑ, τѼ »α¿óÑñÑ¡¡á∩ óδΦÑ, Ñß½¿ óßÑ ¬«¼á¡ñδ
- ¡áσ«ñ∩Γß∩ ó »αÑñóáα¿Γѽ∞¡« ß«ºñá¡¡«⌐ «τÑαÑñ¿, ¿, »«ß¬«½∞¬π ¬«¼á¡ñδ ¬«α«τÑ,
- ¿σ ó ñÑ⌐ßΓó¿Γѽ∞¡«ßΓ¿ ½ÑúτÑ «αúá¡¿º«óáΓ∞ ó «τÑαÑñ∞ :
-
- mov eax, 1234h
- mov π¬áºáΓѽ∞ ¡á ñó«⌐¡«Ñ ß½«ó« foo, eax
- mov π¬áºáΓѽ∞ ¡á ñó«⌐¡«Ñ ß½«ó« baz, eax
- mov [ebp-200], eax
-
-
- `¬`ñG.2 î«ñπ½∞ »αÑñóáα¿Γѽ∞¡«⌐ óδí«α¬¿ `*
-
- î«ñπ½∞ »αÑñóáα¿Γѽ∞¡«⌐ óδí«α¬¿ »α«µÑßß«αá i486 »«½πτáÑΓ ñ«ßΓπ» ¬
- αáß»«½«ªÑ¡¡«⌐ ¡á ¼¿¬α«ßσÑ¼Ñ ¬φΦ-»á¼∩Γ¿ ñ½∩ Γ«ú«, τΓ«íδ ºá»«½¡¿Γ∞
- »αÑñóáα¿Γѽ∞¡πε «τÑαÑñ∞ ¬«¼á¡ñ ó ëà ¼«¼Ñ¡Γ, ¬«úñá ¬φΦ-»á¼∩Γ∞ ¡Ñ
- ºáñÑ⌐ßΓó«óá¡á ñ½∩ αáí«Γδ ¿ ¿¼ÑÑΓß∩ ñ«ßΓáΓ«τ¡« ¼ÑßΓá ó «τÑαÑñ¿ ñ½∩
- αẼÑΘÑ¡¿∩ ñαπú«⌐ ßΓ᫬¿ ¬φΦá (16 íá⌐Γ). àß½¿ »αÑñóáα¿Γѽ∞¡á∩ «τÑαÑñ∞
- ¬«¼á¡ñ »πßΓá, ¼«ªÑΓ »«ΓαÑí«óáΓ∞ß∩ Γα¿ ñ«»«½¡¿Γѽ∞¡δσ Γá¬Γá ñ½∩ ºá»π߬á
- ¡«ó«⌐ ¬«¼á¡ñδ. ÅαÑñóáα¿Γѽ∞¡á∩ «τÑαÑñ∞ ¬«¼á¡ñ ºá¡¿¼áÑΓ 32 íá⌐Γá (2 ßΓ᫬¿
- ó ¬φΦ-»á¼∩Γ¿).
- Æá¬ ¬á¬ ñ«ßΓπ» ¬ ñá¡¡δ¼ óßÑúñá ¿¼ÑÑΓ óδßΦ¿⌐ »α¿«α¿ΓÑΓ »« ßαáó¡Ñ¡¿ε ß
- ºá»α«ßἿ ¡á »αÑñóáα¿Γѽ∞¡πε óδí«α¬π, »«ññÑαªá¡¿Ñ ¬φΦ-»á¼∩Γ¿ ó ß«ßΓ«∩¡¿¿
- ºá¡∩Γ«ßΓ¿ »α¿ »«¼«Θ¿ ñ«ßΓπ»á ¬ ñá¡¡δ¼ ¼«ªÑΓ ºáí½«¬¿α«óáΓ∞ ¼«ñπ½∞
- »αÑñóáα¿Γѽ∞¡«⌐ óδí«α¬¿.
- ü«½ÑÑ Γ«ú«, ó᪡« «αúá¡¿º«óáΓ∞ ¬«¼á¡ñδ Γᬿ¼ «íαẫ¼, τΓ«íδ ¡Ñ
- ¿ß»«½∞º«óá½áß∞ »«ßΓ«∩¡¡« Φ¿¡á »á¼∩Γ¿ »πΓѼ »«ß½Ññ«óáΓѽ∞¡«ßΓ¿ ¬«¼á¡ñ
- «íαáΘÑ¡¿∩ ¬ »á¼∩Γ¿. 諼á¡ñδ ñ«½ª¡δ íδΓ∞ αÑ«αúá¡¿º«óá¡δ Γᬿ¼ «íαẫ¼,
- τΓ«íδ ¿¼Ñ½áß∞ ¬«¼á¡ñá, ¡Ñ «íαáΘáεΘá∩ß∩ ¬ »á¼∩Γ¿ (¡á»α¿¼Ñα, ¬«¼á¡ñá αáí«Γδ
- αÑú¿ßΓα/αÑú¿ßΓα), »« ¬αá⌐¡Ñ⌐ ¼ÑαÑ ºá ñóá Γá¬Γá ñ« Γ«ú«, ¬á¬ »αÑñóáα¿Γѽ∞¡«
- ßΣ«α¼¿α«óá¡¡á∩ «τÑαÑñ∞ ¬«¼á¡ñ ßΓá¡ÑΓ ¿ßτÑα»á¡«⌐. ìá»α¿¼Ñα :
-
-
- ┌─────────────────────────────────┬────────────────────────────┐
- │ 諼á¡ñá │ 使¡á │
- ├─────────────────────────────────┼────────────────────────────┤
- │ mov »á¼∩Γ∞, 1234567h │ 10 íá⌐Γ │
- │ mov »á¼∩Γ∞, 1234567h │ 10 íá⌐Γ │
- │ mov »á¼∩Γ∞, 1234567h │ 10 íá⌐Γ │
- │ mov »á¼∩Γ∞, 1234567h │ 10 íá⌐Γ │
- │ add αÑú¿ßΓα, αÑú¿ßΓα │ 2 íá⌐Γá │
- └─────────────────────────────────┴────────────────────────────┘
-
- àß½¿ »αÑñóáα¿Γѽ∞¡« ßΣ«α¼¿α«óá¡¡á∩ «τÑαÑñ∞ ¬«¼á¡ñ »«½¡á ¡á ¼«¼Ñ¡Γ ¡áτá½á
- αáí«Γδ, Γ«úñá »«ß½Ñ óδ»«½¡Ñ¡¿∩ ΓαÑΓ∞Ñ⌐ ¬«¼á¡ñδ MOV »«∩ó½∩ÑΓß∩ ñ«ßΓáΓ«τ¡«
- »α«ßΓαá¡ßΓóá ñ½∩ ñαπú«⌐ ßΓ᫬¿ ¬φΦá ó «τÑαÑñ¿, ¡«, Γᬠ¬á¬ Φ¿¡á »á¼∩Γ¿
- »α«ñ«½ªáÑΓ »«ßΓ«∩¡¡« ¿ß»«½∞º«óáΓ∞ß∩, ¡ÑΓ ¡Ñ«íσ«ñ¿¼«ú« óαѼѡ¿ ñ½∩ Γ«ú«,
- τΓ«íδ »ÑαÑñáΓ∞ ßΓα«¬π ¿º ¬φΦá ó »αÑñóáα¿Γѽ∞¡« Σ«α¼¿απѼπε «τÑαÑñ∞ ¬«¼á¡ñ.
- àß½¿ »ÑαÑñ ¿½¿ »«ß½Ñ ΓαÑΓ∞Ñ⌐ ¬«¼á¡ñδ MOV ¡Ñ íπñÑΓ óßΓáó½Ñ¡á ¬«¼á¡ñá, ¡Ñ
- «íαáΘáεΘá∩ß∩ ¬ »á¼∩Γ¿, «τÑαÑñ∞ íπñÑΓ ¿ßτÑα»á¡á τÑΓóÑαΓ«⌐ ¬«¼á¡ñ«⌐ MOV. é
- φΓ«¼ ß½πτáÑ ¬«¼á¡ñδ ñ«½ª¡δ íδΓ∞ αÑ«αúá¡¿º«óá¡δ Γᬿ¼ «íαẫ¼, τΓ«íδ
- ¬«¼á¡ñá ADD íδ½á αáß»«½«ªÑ¡á ñ« ¿½¿ »«ß½Ñ ΓαÑΓ∞Ñ⌐ ¬«¼á¡ñδ MOV, ñ½∩ Γ«ú«,
- τΓ«íδ αáºαÑΦ¿Γ∞ ¬φΦ-»á¼∩Γ¿ »ÑαÑß½áΓ∞ «τÑαÑñ¡πε ¬«¼á¡ñ¡πε ßΓ᫬π ó ¼«ñπ½∞
- »αÑñóáα¿Γѽ∞¡«⌐ óδí«α¬¿.
- ì¿ «ñ¡á ¿º »«ñ«í¡δσ αÑ«αúá¡¿ºáµ¿⌐ ¬«¼á¡ñ ¡Ñ íπñÑΓ «¬áºδóáΓ∞ ó½¿∩¡¿∩ ¡á
- ߬«α«ßΓ∞ óδ»«½¡Ñ¡¿∩ »α«úαá¼¼δ ¡á »α«µÑßß«αÑ 386 DX.
-
-
- `¬`ñG.3 éδαáó¡¿óá¡¿Ñ ¬φΦá ¿ ¬«ñá. `*
-
- Åα¿ αáí«ΓÑ ¡á »α«µÑßß«αÑ 386 »α¿Ñ¼¡¿¬ ½εí«⌐ ¿º ¬«¼á¡ñ JUMP/CALL/ RET
- ñ«½ªÑ¡ íδΓ∞ óδα«ó¡Ñ¡ »« áñαÑßπ, ¬αáΓ¡«¼π 4, φΓ« »«¼«úáÑΓ ¼«ñπ½ε
- »αÑñóáα¿Γѽ∞¡«⌐ óδí«α¬¿ ¬«¼á¡ñ ó Σ«α¼¿α«óá¡¿¿ »αÑñóáα¿Γѽ∞¡«⌐ «τÑαÑñ¿
- ¬«¼á¡ñ ß« óßÑ⌐ ñ«»πßΓ¿¼«⌐ íδßΓα«Γ«⌐, Γᬠ¬á¬ óδí«α¬á óδ»«½¡∩ÑΓß∩ »« 4
- íá⌐Γá ºá «ñ¡« «íαáΘÑ¡¿Ñ »α¿ óδα«ó¡Ñ¡¡δσ úαá¡¿µáσ. Æá¬ ¬á¬ ¡á »α«µÑßß«αÑ
- i486 ¿¼ÑÑΓß∩ ¬φΦ-»á¼∩Γ∞ ¡á ¼¿¬α«ßσѼÑ, ½εíá∩ »αÑñóáα¿Γѽ∞¡á∩ óδí«α¬á
- ¬«¼á¡ñ íπñÑΓ óδí¿αáΓ∞ 16 íá⌐Γ ñ½∩ ºá»«½¡Ñ¡¿∩ ßΓ᫬¿ ¬φΦá. Å« φΓ«⌐ »α¿τ¿¡Ñ
- ¡á¿½πτΦÑÑ íδßΓα«ñÑ⌐ßΓó¿Ñ ¼«ªÑΓ íδΓ∞ ñ«ßΓ¿ú¡πΓ« »πΓѼ óδαáó¡¿óá¡¿∩
- «»Ñαá¡ñ«ó-»α¿Ñ¼¡¿¬«ó ó ¬«¼á¡ñáσ JUMP/CALL/RET »« áñαÑßá¼, ¬αáΓ¡δ¼ 16.
- Äñ¡á¬« óδαáó¡¿óá¡¿Ñ »« áñαÑßá¼, ¬αáΓ¡δ¼ 16, ∩ó½∩ÑΓß∩ »α¿τ¿¡«⌐ πóѽ¿τÑ¡¿∩
- αẼÑα«ó ¬«ñá, ¿ »«φΓ«¼π óáªÑ¡ ¬«¼»α«¼¿ßß ¼Ñªñπ ߬«α«ßΓ∞ε óδ»«½¡Ñ¡¿∩ ¿
- αẼÑαἿ ¬«ñá.
- ü«½ÑÑ Γ«ú«, αѬ«¼Ñ¡ñπÑΓß∩, τΓ«íδ Γ«½∞¬« óσ«ñ¡δÑ áñαÑßá Σπ¡¬µ¿⌐ (Γ.Ñ.,
- »α¿Ñ¼¡¿¬¿ ¬«¼á¡ñ CALL) í뫨 óδα«ó¡Ñ¡δ »« áñαÑßá¼, ¬αáΓ¡δ¼ 16; ó Γ« óαѼ∩
- ¬á¬ óßÑ ¼ÑΓ¬¿ (Γ.Ñ. »α¿Ñ¼¡¿¬¿ ó ¬«¼á¡ñáσ JUMP) »α«ñ«½ªá½¿ íδ «ßΓáóáΓ∞ß∩
- óδα«ó¡Ñ¡¡δ¼¿ »« áñαÑßá¼, ¬αáΓ¡δ¼ 4.
- ìá »α«µÑßß«αÑ i486 ΓαÑíπÑΓß∩ ñ«»«½¡¿Γѽ∞¡« ñ« »∩Γ¿ Γá¬Γ«ó ñ½∩ ¡áτá½á
- óδ»«½¡Ñ¡¿∩ ¬«¼á¡ñδ, Ñß½¿ «¡á αáºí¿óáÑΓß∩ í«½ÑÑ τѼ ¡á ñóÑ 16-íá⌐Γ¡δÑ
- ßΓ᫬¿ ¬φΦá. ìá»α¿¼Ñα, Ñß½¿ ¬«¼á¡ñá CALL ºá¬á¡τ¿óáÑΓß∩ ¡á áñαÑßÑ
- 0x0000000à ¿ ß½Ññ«¼ ºá ¡Ñ⌐ ¿ñÑΓ ¬«¼á¡ñá π¼¡«ªÑ¡¿∩ íá⌐Γ«ó, Γ«úñá »«
- ó«ºóαáΘÑ¡¿¿ ¿º óδ»«½¡Ñ¡¿∩ ¬«¼á¡ñδ CALL »α«µÑßß«α ñ«½ªÑ¡ ¿ß»«½∞º«óáΓ∞
- ñ«»«½¡¿Γѽ∞¡« »∩Γ∞ Γá¬Γ«ó ñ½∩ Γ«ú«, τΓ«íδ ºá»«½¡¿Γ∞ »αÑñóáα¿Γѽ∞¡«
- Σ«α¼¿απѼπε «τÑαÑñ∞ ¬«¼á¡ñ, Ñß½¿ Γ«½∞¬« µÑ½Ñóá∩ ¬«¼á¡ñá πªÑ ¡Ñ ¡áσ«ñ¿Γß∩ ó
- ¬φΦÑ. äáªÑ Ñß½¿ µÑ½Ñóá∩ ¬«¼á¡ñá πªÑ ¡áσ«ñ¿Γß∩ ó ¬φΦÑ, ΓѼ ¡Ñ ¼Ñ¡ÑÑ
- »«ΓαÑíπÑΓß∩ ñ«»«½¡¿Γѽ∞¡δÑ 2 µ¿¬½á ñ½∩ Γ«ú«, τΓ«íδ »ÑαÑß½áΓ∞ ÑÑ ó ¼«ñπ½∞
- »αÑñóáα¿Γѽ∞¡«⌐ óδí«α¬¿ ¬«¼á¡ñ.
-
- Å«φΓ«¼π, Ñß½¿ ¬«¼»¿½∩Γ«απ ¿ºóÑßΓ¡« óδαáó¡¿óá¡¿Ñ »α¿Ñ¼¡¿¬á, Γ«úñá íπñÑΓ
- íδßΓαÑÑ ó¬½ετ¿Γ∞ ¬«¼á¡ñδ ºá»«½¡Ñ¡¿∩ Γá¬, τΓ«íδ ¬«¼á¡ñá π¼¡«ªÑ¡¿∩ íá⌐Γ«ó
- ¡áτ¿¡á½áß∞ ß óδα«ó¡Ñ¡¡«ú« áñαÑßá. ¥Γ« ¼«ªÑΓ íδΓ∞ ñ«ßΓ¿ú¡πΓ« ½¿í« »πΓѼ
- »ÑαÑßΓá¡«ó¬¿ »«ß½Ññ«óáΓѽ∞¡«ßΓ¿ ¬«¼á¡ñ, ½¿í« ó¬½ετÑ¡¿Ñ¼ ¬«¼á¡ñδ NOP.
- Æá¬«Ñ óδαáó¡¿óá¡¿Ñ ¬«¼á¡ñ íπñÑΓ Γá¬ªÑ ó½¿∩Γ∞ ¡á ߬«α«ßΓ∞ óδ»«½¡Ñ¡¿∩ ¡á
- »α«µÑßß«αÑ 386.
-
-
- `¬`ñG.4. 諼á¡ñá NOP `*
-
- ê¡«úñá »α«úαἼἠ¡Ñ«íσ«ñ¿¼ ºá»«½¡¿Γѽ∞ ¼Ñªñ𠬫¼á¡ñἿ ñ½∩ Γ«ú«, τΓ«íδ
- óδαáó¡¿óáΓ∞ ¿σ. ìá »α«µÑßß«αáσ 386 ¿ i486 Γᬫóδ¼ ºá»«½¡¿ΓѽѼ ∩ó½∩ÑΓß∩
- «ñ¡«íá⌐Γ«óá∩ ¬«¼á¡ñá NOP, ¬«Γ«αá∩ ó ñÑ⌐ßΓó¿Γѽ∞¡«ßΓ¿ «í¼Ñ¡¿óáÑΓ ß«ñÑন¼«Ñ
- αÑú¿ßΓαá àÇò ß ß«ñÑন¼δ¼ αÑú¿ßΓαá àÇò ªÑ.
- 諼á¡ñδ ñαπú¿σ ñ½¿¡ ¼«úπΓ íδΓ∞ óδ»«½¡Ñ¡δ ºá «ñ¿¡ µ¿¬½. Æáí½¿µá ¡¿ªÑ
- »α¿ó«ñ¿Γ ¡Ñ¬«Γ«αδÑ ¿º ¡¿σ.
-
- 1-íá⌐¡á∩ inc αÑú¿ßΓα ; ¼«ñ¿Σ¿µ¿απÑΓ αÑú¿ßΓα ¿
- ; Σ½áú¿
- 2-íá⌐Γ¡á∩ mov αÑú¿ßΓα, αÑú¿ßΓα ; ó ñÑ⌐ßΓó¿Γѽ∞¡«ßΓ¿ NOP
- 3-íá⌐Γ¡á∩ lea αÑú¿ßΓα, 0[αÑú¿ßΓα] ; ó ñÑ⌐ßΓó¿Γѽ∞¡«ßΓ¿ NOP,
- ; ß ¿ß»«½∞º«ó᡿Ѽ
- ; 8-αáºα∩ñ¡«ú« ß¼ÑΘÑ¡¿∩
- 5-íá⌐Γ¡á∩ mov eax, 0 ; ¼«ñ¿Σ¿µ¿απÑΓ αÑú¿ßΓα eax
- 5-íá⌐Γ¡á∩ add eax, 0 ; ¼«ñ¿Σ¿µ¿απÑΓ Σ½áú¿
- 6-íá⌐Γ¡á∩ lea reg, 0[eax] ; ó ñÑ⌐ßΓó¿Γѽ∞¡«ßΓ¿ NOP,
- ; ß ¿ß»«½∞º«ó᡿Ѽ
- ; 32-αáºα∩ñ¡«ú« ß¼ÑΘÑ¡¿∩
-
- éñ«íáó«¬, ¼¡«ú¿Ñ ¬«¼á¡ñδ »α«µÑßß«α«ó 386/i486 ¿¼ÑεΓ «ß«íδÑ Σ«α¼δ ¿ ñ½¿¡δ,
- ¿ß»«½∞ºπεΘ¿Ñ ¡Ñ»«ßαÑñßΓóÑ¡¡δÑ ñá¡¡δÑ αẽ¿τ¡«⌐ ñ½¿¡δ ¿½¿ ß¼ÑΘÑ¡¿∩ ó »á¼∩Γ¿
- αẽ¿τ¡«⌐ αẼÑα¡«ßΓ¿. Æá¬ªÑ ¡Ñ¬«Γ«αδÑ ¬«¼á¡ñδ ¿¼ÑεΓ π¬«α«τÑ¡¡δÑ Σ«α¼δ,
- Ñß½¿ «»Ñαá¡ñ«¼-»α¿Ñ¼¡¿¬«¼ ∩ó½∩ÑΓß∩ αÑú¿ßΓα EAX/AX/AL.
- ìÑ óßÑ ¬«¼á¡ñδ ß αẽ¿τ¡δ¼¿ Σ«α¼á¼¿ íπñπΓ óδ»«½¡∩Γ∞ß∩ ºá «ñ¡« ¿ Γ«ªÑ
- óαѼ∩. Åα¿¼Ñα«¼, ó ¬«Γ«α«¼ αẽ¿τ¡δÑ Σ«α¼δ íπñπΓ óδ»«½¡∩Γ∞ß∩ ºá αẽ¿τ¡«Ñ
- óαѼ∩, ∩ó½∩εΓß∩ ¬«¼á¡ñδ PUSH/POP/REG. àß½¿ «¡¿ ºá¬«ñ¿α«óá¡δ ó «ñ¡«íá⌐Γ«óπε
- Σ«α¼π, «¡¿ íπñπΓ óδ»«½¡∩Γ∞ß∩ ºá «ñ¿¡ µ¿¬½, ¡« Ñß½¿ «¡¿ ºá¬«ñ¿α«óá¡δ ó
- 2-íá⌐Γ¡πε Σ«α¼π, «¡¿ íπñπΓ óδ»«½¡∩Γ∞ß∩ ºá 4 µ¿¬½á.
- 諼á¡ñδ ºá»«½¡Ñ¡¿∩ NOP íπñπΓ Γá¬ªÑ óδ»«½¡∩Γ∞ß∩ íδßΓαÑÑ, τѼ ¬«¼á¡ñá XCHG
- ¡á »α«µÑßß«αáσ ßѼÑ⌐ßΓóá 386. êß»«½∞º«óá¡¿Ñ αẽ¿τ¡δσ Σ«α¼ «ñ¡«⌐ ¿ Γ«⌐ ªÑ
- ¬«¼á¡ñδ ¡Ñ ó½¿∩ÑΓ ¡á íδßΓα«ñÑ⌐ßΓó¿Ñ »α¿ óδ»«½¡Ñ¡¿Ñ ¡á »α«µÑßß«αÑ 386.
-
-
- `¬`ñG.5. 諼á¡ñδ αáí«Γδ ß µÑ½δ¼¿ τ¿ß½á¼¿`*
-
- Åα«µÑßß«α i486 ¼«ªÑΓ óδ»«½¡∩Γ∞ í«½∞Φ¿¡ßΓó« τáßΓ« ¿ß»«½∞ºπѼδσ ¬«¼á¡ñ
- (Γᬿσ, ¬á¬ ºáúαπº¬á ¿½¿ ºá»«¼¿¡á¡¿Ñ αÑú¿ßΓαá, Çïô-«»Ñαᵿ¿ ß αÑú¿ßΓα«¼, ¿
- Γ.ñ.) ºá «ñ¿¡ Γá¬Γ. Äñ¡á¬«, ó «Γ½¿τ¿Ñ «Γ »α«µÑßß«αá 386, ¡Ñ¬«Γ«αδÑ ¿º
- «»Ñαᵿ⌐ ß »á¼∩Γ∞ε ºá¡¿¼áεΓ ΓÑ»Ñα∞ í«½∞ΦÑ µ¿¬½«ó, τѼ ß««ΓóÑΓßΓóπεΘ¿Ñ
- «»Ñαᵿ¿ ß αÑú¿ßΓαἿ. ìá»α¿¼Ñα, ¬«¼á¡ñá PUSH MEM :
-
- ┌────────────────────┬──────────────────────┬────────────────────┐
- │ 諼á¡ñá │ Æá¬Γδ ûÅô 386(Æî) DX │ Æá¬Γδ ûÅô i486(TM) │
- ├────────────────────┼──────────────────────┼────────────────────┤
- │ mov αÑú¿ßΓα,»á¼∩Γ∞ │ 4 │ 1 │
- │ push αÑú¿ßΓα │ 2 │ 1 │
- │ push »á¼∩Γ∞ │ 5 │ 4 │
- └────────────────────┴──────────────────────┴────────────────────┘
-
- Tᬿ¼ «íαẫ¼, ñ½∩ »α«µÑßß«αá i486, ºáúαπº¬á º¡áτÑ¡¿∩ ¿º »á¼∩Γ¿ ó αÑú¿ßΓα
- ¿ ºáΓѼ ºá¡ÑßÑ¡¿Ñ φΓ«ú« αÑú¿ßΓαá ó ßΓѬ »α¿óÑñÑΓ ¬ τ¿ßΓ«¼π ß«σαá¡Ñ¡¿ε 2
- Γá¬Γ«ó; ¡« ñ½∩ »α«µÑßß«αá 386 DX ΓáªÑ ßá¼á∩ »«ß½Ññ«óáΓѽ∞¡«ßΓ∞ ¬«¼á¡ñ
- »α¿óÑñÑΓ ¬ τ¿ßΓ«⌐ »«ΓÑαÑ «ñ¡«ú« Γá¬Γá. Äñ¡á¬« ñ½∩ Γ«ú«, τΓ«íδ ºáúαπº¿Γ∞
- º¡áτÑ¡¿Ñ ó αÑú¿ßΓα ¡á »α«µÑßß«αÑ i486, ¡Ñ«íσ«ñ¿¼« ¡á⌐Γ¿ »πßΓ«⌐ αÑú¿ßΓα;
- Ñß½¿ ñÑ⌐ßΓó¿Ñ »« ºáúαπº¬Ñ º¡áτÑ¡¿∩ π¡¿τΓ«ª¿Γ º¡áτÑ¡¿Ñ αÑú¿ßΓαá, ¬«Γ«α«Ñ
- ¼«ú½« íδΓ∞ ¿ß»«½∞º«óá¡« »«ºñ¡ÑÑ, Γ« ß«σαá¡Ñ¡¿Ñ º¡áτÑ¡¿∩ ¼«ªÑΓ »α¿óÑßΓ¿ ¬
- «Γα¿µáΓѽ∞¡«¼π αѺπ½∞ΓáΓπ »« »α¿τ¿¡Ñ »«ΓÑα¿ »«óΓ«α¡« ¿ß»«½∞ºπѼ«ú«
- º¡áτÑ¡¿∩ αÑú¿ßΓαá.
-
- äαπú¿¼ »α¿¼Ñα«¼ ß½πª¿Γ ¬«¼á¡ñá LEAVE :
-
- ┌──────────────────┬──────────────────────┬────────────────────┐
- │ 諼á¡ñá │ Æá¬Γδ ûÅô 386(Æî) DX │ Æá¬Γδ ûÅô i486(TM) │
- ├──────────────────┼──────────────────────┼────────────────────┤
- │ mov esp, ebp │ 2 │ 1 │
- │ pop ebp │ 4 │ 1+1 (ΦΓαáΣ ºá esp) │
- │ leave │ 4 │ 5 │
- └──────────────────┴──────────────────────┴────────────────────┘
-
- Ä»∩Γ∞ ªÑ, ñ½∩ »α«µÑßß«αá i486, óδ»«½¡Ñ¡¿Ñ »«ß½Ññ«óáΓѽ∞¡«ßΓ¿ ¬«¼á¡ñ
- MOV/POP »α¿ó«ñ¿Γ ¬ τ¿ßΓ«¼π ß«σαá¡Ñ¡¿ε 2 Γá¬Γ«ó »« ßαáó¡Ñ¡¿ε ß ¬«¼á¡ñ«⌐
- LEAVE; ó Γ« óαѼ∩, ¬á¬ óδ»«½¡∩∩ß∞ ¡á »α«µÑßß«αÑ 386 DX, ¬«¼á¡ñá LEAVE
- «ñ¡«óαѼѡ¡« ¿ íδßΓαÑÑ, ¿ ¬«α«τÑ. Äñ¡á¬«, Γᬠ¬á¬ »Ñαóá∩ ¬«¼á¡ñá MOV
- ¿ß»«½∞ºπÑΓ αÑú¿ßΓα ESP ó ¬áτÑßΓóÑ »α¿Ñ¼¡¿¬á ¿ ¬«¼á¡ñá POP Γá¬ªÑ ¡Ñ∩ó¡«
- ¿ß»«½∞ºπÑΓ αÑú¿ßΓα ESP ó ¬áτÑßΓóÑ íáºδ (¬á¬ πªÑ π»«¼¿¡á½«ß∞ óδΦÑ), φΓá
- »«ß½Ññ«óáΓѽ∞¡«ßΓ∞ ñÑ⌐ßΓó¿⌐ »α¿ó«ñ¿Γ ¬ »«½πτÑ¡¿ε «ñ¡«ú« ΦΓαáΣ¡«ú« Γá¬Γá,
- Ñß½¿ Γ«½∞¬« ñóÑ ¬«¼á¡ñδ ¡Ñ αáºñѽѡδ ñαπú«⌐ ¬«¼á¡ñ«⌐. àß½¿ 󫺼«ª¡« Γᬿ¼
- «íαẫ¼ »ÑαÑπ»«α∩ñ«τ¿Γ∞ ¬«¼á¡ñδ, τΓ«íδ ¬«¼á¡ñδ MOV/POP í뫨 íδ αáºñѽѡδ
- »«½Ñº¡«⌐ ¬«¼á¡ñ«⌐, Γ«úñá τ¿ßΓδ⌐ óδ¿úαδΦ ó Γá¬Γáσ »« ßαáó¡Ñ¡¿ε ß ¬«¼á¡ñ«⌐
- LEAVE ß«ßΓáó¿½ íδ 3 Γá¬Γá ¡á »α«µÑßß«αÑ i486.
- Æá¬ ¬á¬ »α«µÑßß«α i486 ¼«ªÑΓ αáí«ΓáΓ∞ ß «»Ñαá¡ñἿ ó αÑú¿ßΓαáσ íδßΓαÑÑ,
- τѼ ß «»Ñαá¡ñἿ ó »á¼∩Γ¿ (¬á¬ ¿ »«τΓ¿ í«½∞Φ¿¡ßΓó« ñαπú¿σ áασ¿ΓѬΓπα),
- ó᪡« ¿¼ÑΓ∞ σ«α«ΦÑÑ αẼÑΘÑ¡¿Ñ αÑú¿ßΓα«ó ¿ «»Γ¿¼¿ºáµ¿ε ΓαѬ¿¡úá º¡áτÑ¡¿⌐ ó
- ½εí«¼ ¿º ¬«¼»¿½∩Γ«α«ó. æ ñαπú«⌐ ßΓ«α«¡δ, ¡ÑΓ ß«σαá¡Ñ¡¿∩ »α¿ ºáúαπº¬Ñ
- ¬áªñ«ú« º¡áτÑ¡¿∩ »ÑαÑñ Ñú« ¿ß»«½∞º«ó᡿Ѽ, ¬á¬ φΓ« ßñѽᡫ ó RISC
- áασ¿ΓѬΓπαÑ. Åα«µÑßß«α i486 ¼«ªÑΓ óδ»«½¡∩Γ∞ ¬«¼á¡ñδ Çïô Γ¿»á
- αÑú¿ßΓα,»á¼∩Γ∞ Γá¬ªÑ íδßΓα«, ¬á¬ ¿ »«ß½Ññ«óáΓѽ∞¡«ßΓ¿ ¬«¼á¡ñ
- ºáúαπº¿Γ∞/«»Ñαᵿ∩/ºá»«¼¡¿Γ∞. ìá»α¿¼Ñα, ñ½∩ »α¿ßóá¿óá¡¿∩ : »á¼∩Γ∞1 =
- »á¼∩Γ∞1 + »á¼∩Γ∞2 - ¼«ª¡« ¿ß»«½∞º«óáΓ∞ ß½ÑñπεΘ¿Ñ »«ß½Ññ«óáΓѽ∞¡«ßΓ¿
- ¬«¼á¡ñ, ß óáα∞¿α«ó᡿Ѽ «íΘÑú« ¬«½¿τÑßΓóá Γá¬Γ«ó ñ½∩ »α«µÑßß«α«ó 386 DX ¿
- SX, ¡« «ñ¡¿¼ ¿ ΓѼ ªÑ ¬«½¿τÑßΓó«¼ Γá¬Γ«ó ñ½∩ »α«µÑßß«αá i486 :
-
- ┌──────────────────┬──────────────────────┬────────────────────┐
- │ 諼á¡ñá │ Æá¬Γδ ûÅô 386(Æî) DX │ Æá¬Γδ ûÅô i486(TM) │
- ├──────────────────┼──────────────────────┼────────────────────┤
- │ mov eax, »á¼∩Γ∞1 │ 4 │ 1 │
- │ mov ebx, »á¼∩Γ∞2 │ 4 │ 1 │
- │ add eax, ebx │ 2 │ 1 │
- │ mov »á¼∩Γ∞1, eax │ 2 │ 1 │
- │ │ │ │
- │ mov eax, »á¼∩Γ∞1 │ 4 │ 1 │
- │ add eax, »á¼∩Γ∞2 │ 6 │ 2 │
- │ mov »á¼∩Γ∞1, eax │ 2 │ 1 │
- │ │ │ │
- │ mov eax, »á¼∩Γ∞1 │ 4 │ 1 │
- │ add »á¼∩Γ∞2, eax │ 7 │ 3 │
- └──────────────────┴──────────────────────┴────────────────────┘
-
- 諼á¡ñá MOVZX ∩ó½∩ÑΓß∩ ñαπú¿¼ »α¿¼Ñα«¼, ó ¬«Γ«α«¼ »α«µÑßß«α i486 ¼«ªÑΓ
- αáí«ΓáΓ∞ íδßΓαÑÑ ß ¿ß»«½∞º«ó᡿Ѽ »α«ßΓδσ ¬«¼á¡ñ, Ñß½¿ »α¿Ñ¼¡¿¬«¼ ∩ó½∩ÑΓß∩
- αÑú¿ßΓα, ¬«Γ«αδ⌐ ó ßó«ε «τÑαÑñ∞ ¼«ªÑΓ íδΓ∞ áñαÑßπѼ »«íá⌐Γ¡«. ìá»α¿¼Ñα,
- ºáúαπº¬á º¡áτÑ¡¿∩ íá⌐Γá :
-
- ┌────────────────────┬──────────────────────┬────────────────────┐
- │ 諼á¡ñá │ Æá¬Γδ ûÅô 386(Æî) DX │ Æá¬Γδ ûÅô i486(TM) │
- ├────────────────────┼──────────────────────┼────────────────────┤
- │ movzx eax, »á¼∩Γ∞1 │ 6 │ 3+1 (»αÑΣ¿¬ß 0Fh) │
- │ xor eax, eax │ 2 │ 1 │
- │ movb al, »á¼∩Γ∞1 │ 4 │ 1 │
- └────────────────────┴──────────────────────┴────────────────────┘
-
- Æá¬¿¼ «íαẫ¼, ñ½∩ »α«µÑßß«αá i486, ß¡áτá½á «τ¿ßΓ¬á αÑú¿ßΓαá ¿ ºáΓѼ
- ºáúαπº¬á º¡áτÑ¡¿∩ αÑú¿ßΓαá ¼«ªÑΓ ñáΓ∞ ó ¬áτÑßΓóÑ αѺπ½∞ΓáΓá τ¿ßΓπε
- φ¬«¡«¼¿ε ñóπσ Γá¬Γ«ó (ó ºáó¿ß¿¼«ßΓ¿ «Γ Γ«ú«, úñÑ Γá¬Γ ñѬ«ñ¿α«óá¡¿∩
- »αÑΣ¿¬ßá ¼«ªÑΓ íδΓ∞ »ÑαѬαδΓ »αÑñδñπΘÑ⌐ ¬«¼á¡ñ«⌐, ß¼«Γα¿ Éáºñѽ G.8,
- »«ßó∩ΘÑ¡¡δ⌐ ÅαÑΣ¿¬ß¡δ¼ ¬«ñá¼ «»Ñαᵿ⌐), ó Γ« óαѼ∩ ¬á¬ ¡ÑΓ αạ¿µδ ó
- óδ»«½¡Ñ¡¿¿ ¬«¼á¡ñ ¡á »α«µÑßß«αÑ 386 DX.
-
-
- `¬`ñG.6. è«ñδ πß½«ó¿∩ `*
-
- é ¡Ñ¬«Γ«αδσ ∩ºδ¬áσ »α«úαá¼¼¿α«óá¡¿∩ óδß«¬«ú« πα«ó¡∩ ¿¡«úñá ¡Ñ«íσ«ñ¿¼«
- »αÑ«íαẫóáΓ∞ αѺπ½∞ΓáΓ íπ½Ñó߬«ú« πß½«ó¿∩ (á ¿¼Ñ¡¡«, αáóÑ¡ßΓóá,
- í«½∞ΦÑ-τѼ ¿½¿ ¼Ñ¡∞ΦÑ-τѼ ¿ Γᬠñá½ÑÑ) ó º¡áτÑ¡¿Ñ ¿ßΓ¿¡á ¿½¿ ½«ª∞ (Γ.Ñ.
- 0/1). Åα«µÑßß«αδ 386 ¿ i486 «íδτ¡« »«ññÑনóáεΓ αѺπ½∞ΓáΓδ ßαáó¡Ñ¡¿∩ ó
- αÑú¿ßΓαÑ Σ½áú«ó, »«φΓ«¼π ñ½∩ Γ«ú«, τΓ«íδ »αÑ«íαẫóáΓ∞ αѺπ½∞ΓáΓ ßαáó¡Ñ¡¿∩
- ó º¡áτÑ¡¿Ñ ¿ßΓ¿¡á/ ½«ª∞, ¡Ñ«íσ«ñ¿¼« »αÑ«íαẫóáΓ∞ º¡áτÑ¡¿∩ Σ½áú«ó ó µÑ½δÑ
- º¡áτÑ¡¿∩.
- Åα«µÑßß«αδ 386 ¿ i486 ¿¼ÑεΓ ¼¡«ªÑßΓó« ¬«¼á¡ñ SETcc, ¬«Γ«αδÑ óδ»«½¡∩εΓ
- Γá¬«Ñ »αÑ«íαẫóá¡¿Ñ, «ñ¡á¬« ¬«¼á¡ñδ SETcc ºá¡¿¼áεΓ 3 ¿½¿ 4 Γá¬Γá »α¿
- óδ»«½¡Ñ¡¿¿ ¡á »α«µÑßß«αÑ i486, ó ºáó¿ß¿¼«ßΓ¿ «Γ Γ«ú«, ¬«úñá πß½«ó¿Ñ
- »α«óÑα∩ÑΓß∩ ¡á ¿ßΓ¿¡π ¿½¿ ½«ª¡«ßΓ∞. æ»Ñµ¿á½∞¡« »α¿ ßαáó¡Ñ¡¿¿ º¡áτÑ¡¿⌐ íѺ
- º¡á¬á ¡á í«½∞ΦÑ τѼ ¿½¿ ¼Ñ¡∞ΦÑ τѼ, ¿¼ÑÑΓß∩ ¡Ñ«í∩ºáΓѽ∞¡á∩ ñ½∩
- ¿ß»«½∞º«óá¡¿∩ »«ß½Ññ«óáΓѽ∞¡«ßΓ∞ ñÑ⌐ßΓó¿⌐. ìá»α¿¼Ñα, Ñß½¿ "x" ¿ "y"
- ∩ó½∩εΓß∩ º¡áτÑ¡¿∩¼¿ íѺ º¡á¬á, ¿ "x" ºáúαπªÑ¡ ó αÑú¿ßΓα eax ¿ "y" ºáúαπªÑ¡
- ó αÑú¿ßΓα ecx, Γ«úñá ¬«ñ ñ½∩ ßαáó¡Ñ¡¿∩ "(x<y)" ¼«ªÑΓ íδΓ∞ »«½πτÑ¡
- ß½ÑñπεΘ¿¼¿ ß»«ß«íἿ :
-
- ┌──────────────────┬──────────────────────┬────────────────────┐
- │ 諼á¡ñá │ Æá¬Γδ ûÅô 386(Æî) DX │ Æá¬Γδ ûÅô i486(TM) │
- ├──────────────────┼──────────────────────┼────────────────────┤
- │ cmp eax, ecx │ 2 │ 1 │
- │ mov eax, 0 │ 2 │ 1 │
- │ jnb L1 │ 7 + m/3 │ 3/1 │
- │ mov eax, 1 │ 2 │ 1 │
- │ L1: │ │ │
- │ cmp eax, ecx │ 2 │ 1 │
- │ setb al │ 4/5 │ 4/3 │
- │ movsx eax, al │ 3 │ 3 │
- │ cmp eax, ecx │ 2 │ 1 │
- │ sbb eax, eax │ 2 │ 1 │
- │ neg eax │ 4 │ 1 │
- └──────────────────┴──────────────────────┴────────────────────┘
-
- Æá¬¿¼ «íαẫ¼, ¿ß»«½∞º«óá¡¿Ñ ¬«¼á¡ñδ SBB ñ½∩ »«½πτÑ¡¿∩ πßΓá¡«ó½Ñ¡¡δσ
- º¡áτÑ¡¿⌐ Σ½áú«ó »α¿ ßαáó¡Ñ¡¿¿ íѺ º¡á¬á ñáÑΓ ¡á¿óδßΦÑÑ íδßΓα«ñÑ⌐ßΓó¿Ñ, íѺ
- »αÑαδóá¡¿∩ »αÑñóáα¿Γѽ∞¡« óδíαá¡¡«ú« ¬«¡óÑ⌐Ñα¡«ú« »α«µÑßßá, Γᬠ¬á¬ ¡Ñ
- ¿ß»«½∞ºπÑΓß∩ ¡¿¬á¬¿σ »ÑαÑñáτ π»αáó½Ñ¡¿∩. ÄíαáΓ¿ΓÑ ó¡¿¼á¡¿Ñ, τΓ« σ«Γ∩ φΓ« ¿
- ߻ѵ¿Σ¿τÑ߬¿⌐ »α«µÑßß ñ½∩ »α«óÑન πß½«ó¿∩ "(x<y)", »αÑñßΓáó½∩ÑΓß∩
- 󫺼«ª¡δ¼ »αÑ«íαẫóáΓ∞ ñαπú¿Ñ »α«óÑન ¬ ñá¡¡«⌐ Σ«α¼Ñ »«ßαÑñßΓó«¼ ½¿í«
- «Γα¿µá¡¿∩ πß½«ó¿∩, ½¿í« ºá¼Ñ¡«⌐ «»Ñαá¡ñ«ó ¼ÑßΓἿ.
- Æá¬¿Ñ ºá¼Ñ¡δ ¬«¼á¡ñ ¬«ñá πß½«ó¿∩ Γá¬ªÑ «¬áºδóáεΓ ó½¿∩¡¿Ñ ¡á óδ»«½¡Ñ¡¿Ñ
- »α«úαá¼¼ ¡á »α«µÑßß«αÑ 386.
-
-
- `¬`ñG.7. 諼á¡ñδ αáí«Γδ ß« ßΓα«¬á¼¿ `*
-
- Æá¬ ªÑ, ¬á¬ ¿ »α«µÑßß«α 386 DX, »α«µÑßß«α i486 óδ»«½¡∩ÑΓ ¬«¼á¡ñδ αáí«Γδ ß«
- ßΓα«¬á¼¿ ¼Ññ½Ñ¡¡ÑÑ, τѼ ¬«¼á¡ñδ ºáúαπº¬¿ ¿ ß«σαá¡Ñ¡¿∩. ìá»α¿¼Ñα, ¬«¼á¡ñá
- LODS :
-
- ┌──────────────────┬──────────────────────┬────────────────────┐
- │ 諼á¡ñá │ Æá¬Γδ ûÅô 386(Æî) DX │ Æá¬Γδ ûÅô i486(TM) │
- ├──────────────────┼──────────────────────┼────────────────────┤
- │ mov eax, [esi] │ 4 │ 1 │
- │ add esi, 4 │ 2 │ 1 │
- │ │ │ │
- │ lods │ 5 │ 4 │
- └──────────────────┴──────────────────────┴────────────────────┘
-
- 諼á¡ñá LODS óδ»«½¡∩ÑΓ í«½∞ΦÑ ñÑ⌐ßΓó¿⌐, τѼ «Γñѽ∞¡á∩ ¬«¼á¡ñá MOV, «¡á
- Γá¬ªÑ «í¡«ó½∩ÑΓ αÑú¿ßΓα ESI. Äñ¡á¬«, Ñß½¿ ¡ÑΓ ¡Ñ«íσ«ñ¿¼«ßΓ¿ ó «í¡«ó½Ñ¡¿¿
- αÑú¿ßΓαá, Γ« ¬«¼á¡ñá MOV »α¿ó«ñ¿Γ ¬ τ¿ßΓ«¼π ß«σαá¡Ñ¡¿ε 3 Γá¬Γ«ó ¿ ¡á
- »α«µÑßß«αÑ 386 DX, ¿ ¡á »α«µÑßß«αÑ i486. ÅÑτá½∞¡δ¼ ¬«¼»α«¼¿ßß«¼ ß½πª¿Γ Γ«,
- τΓ« ¬«¼á¡ñá LODS ¬«α«τÑ ¬«¼á¡ñδ MOV.
- Æá¬ªÑ ¿ »α¿ ¡Ñ »«óΓ«α∩εΘѼß∩ ¿ß»«½∞º«óá¡¿¿ «Γñѽ∞¡δÑ ¬«¼á¡ñδ MOV óßÑúñá
- íπñπΓ óδ»«½¡∩Γ∞ß∩ íδßΓαÑÑ, τѼ ßΓα«τ¡á∩ ¬«¼á¡ñá MOVS. ê ñáªÑ ó µ¿¬½Ñ RET,
- Ñß½¿ µ¿¬½ ñ«ßΓáΓ«τ¡« ¬«α«Γ¬¿⌐, íδßΓαÑÑ ¿ß»«½∞º«óáΓ∞ «Γñѽ∞¡δÑ ¬«¼á¡ñδ
- ºáúαπº¬¿ ¿ ß«σαá¡Ñ¡¿∩, τѼ πßΓá¡áó½¿óáΓ∞ º¡áτÑ¡¿∩ ñ½∩ REP'MOVS.
- 諼»α«¼¿ß«¼ ó¡«ó∞ ∩ó½∩ÑΓß∩ »α«Γ¿ó«ßΓ«∩¡¿Ñ ߬«α«ßΓ¿ óδ»«½¡Ñ¡¿∩ ¿ αẼÑα«ó
- ¬«ñá, »α¿ ¿ß»«½∞º«óá¡¿¿ ¬«¼á¡ñδ REP'MOVS µ¿¬½ íπñÑΓ ¬«α«τÑ, ¡« ¼Ññ½Ñ¡¡ÑÑ.
- Äñ¡á¬«, ¬á¬ π¬áºδóὫß∞ óδΦÑ, ñ½¿¡¡á∩ »«ß½Ññ«óáΓѽ∞¡«ßΓ∞ ¬«¼á¡ñ ºáúαπº¬¿ ¿
- ß«σαá¡Ñ¡¿∩ ¼«ªÑΓ ºá¬αδΓ∞ ñ«ßΓπ» ¼«ñπ½ε »αÑñóáα¿Γѽ∞¡«⌐ óδí«α¬¿ ¬
- »αÑñóáα¿Γѽ∞¡«¼π Σ«α¼¿α«óá¡¿ε «τÑαÑñ¿ ¬«¼á¡ñ ¿ Γᬿ¼ «íαẫ¼ ºáΓ«α¼«º¿Γ∞
- »α«µÑßß«α, »«φΓ«¼π ¡Ñ αѬ«¼Ñ¡ñπÑΓß∩ »ÑαѼÑΘáΓ∞ í«½ÑÑ 16 íá⌐Γ ¬«¼á¡ñἿ
- ºáúαπº¬¿ ¿ ß«σαá¡Ñ¡¿∩ íѺ ¿ß»«½∞º«óá¡¿∩ ¼Ñªñπ ¡¿¼¿ ¬«¼á¡ñ, ¡Ñ αáí«ΓáεΘ¿σ ß
- »á¼∩Γ∞ε, τΓ«íδ »«ºó«½¿Γ∞ πßΓα«⌐ßΓóδ »αÑñóáα¿Γѽ∞¡«⌐ óδí«α¬¿ «íαáΓ¿Γ∞ß∩ ¬
- ¬φΦ-»á¼∩Γ¿.
- ǡὫú¿τ¡δÑ «»Γ¿¼¿ºáµ¿¿ ¼«úπΓ íδΓ∞ »α«óÑñÑ¡δ ñ½∩ ¬«¼á¡ñδ STOS ¿ ñαπú¿σ
- ¬«¼á¡ñ αáí«Γδ ß« ßΓα«¬á¼¿. Æá¬¿Ñ ºá¼Ñ¡δ ¬«¼á¡ñ αáí«Γδ ß« ßΓα«¬á¼¿ ó½¿∩εΓ
- ¡á óδ»«½¡Ñ¡¿Ñ »α«úαá¼¼δ ¡á 386 »α«µÑßß«αÑ.
-
-
- `¬`ñG.8. 諼á¡ñδ αáí«Γδ ß τ¿ß½á¼¿ ß »½áóáεΘÑ⌐ Γ«τ¬«⌐`*
-
- Æá¬ ªÑ, ¬á¬ ¿ ¬«¼í¿¡áµ¿∩ »α«µÑßß«αá 386 ß ¼áΓѼáΓ¿τÑ߬¿¼ ß«»α«µÑßß«α«¼
- 387, ¼«ñπ½∞ «íαáí«Γ¬¿ «»Ñαᵿ⌐ »½áóáεΘÑ⌐ Γ«τ¬«⌐ »α«µÑßß«αá i486 ∩ó½∩ÑΓß∩
- «Γñѽ∞¡δ¼ óδτ¿ß½¿Γѽ∞¡δ¼ πßΓα«⌐ßΓó«¼ ¿ αáí«ΓáÑΓ »áαώѽ∞¡« ß
- µÑ½«τ¿ß½Ñ¡¡δ¼ ¼«ñπ½Ñ¼, ñáªÑ Ñß½¿ Σ¿º¿τÑ߬¿ «¡¿ ¿ αẼÑΘáεΓß∩ ¡á «ñ¡«⌐
- ¼¿¬α«ßσѼÑ. æ½Ññ«óáΓѽ∞¡«, ½εíá∩ »«ß½Ññ«óáΓѽ∞¡«ßΓ∞ ¬«¼á¡ñ, ¬«Γ«αá∩
- ñ«»π߬áÑΓ »áαώѽ∞¡«Ñ ¿ß»«½∞º«óá¡¿Ñ φΓ¿σ ñóπσ ¡Ñºáó¿ß¿¼δσ ¼«ñπ½Ñ⌐, íπñÑΓ
- αáí«ΓáΓ∞ íδßΓαÑÑ.
- 諼á¡ñδ αáí«Γδ ß τ¿ß½á¼¿ ß »½áóáεΘÑ⌐ Γ«τ¬«⌐ ¡Ñ ß½ÑñπÑΓ αẼÑΘáΓ∞ «ñ¡π
- óß½Ññ ºá ñαπú«⌐. ¥Γ¿ ¬«¼á¡ñδ ß½ÑñπÑΓ π»«α∩ñ«τ¿Γ∞ Γᬿ¼ «íαẫ¼, τΓ«íδ ñóÑ
- ¬«¼á¡ñδ óδτ¿ß½Ñ¡¿⌐ ß »½áóáεΘÑ⌐ ºá»∩Γ«⌐ αáºñѽ∩½¿ß∞ ñαπú«⌐, ¡Ñ ßó∩ºá¡¡«⌐ ß
- τ¿ß½á¼¿ ß »½áóáεΘÑ⌐ Γ«τ¬«⌐, ¬«¼á¡ñ«⌐, τΓ«íδ ñóá ¼«ñπ½∩ ¼«ú½¿ αáí«ΓáΓ∞
- »áαώѽ∞¡«. ÄíαáΓ¿ΓÑ «ß«í«Ñ ó¡¿¼á¡¿Ñ ¡á »α«ñ«½ª¿Γѽ∞¡«ßΓ∞ ó Γá¬Γáσ
- »α«µÑßß«αá ñ½∩ ¬«¼á¡ñ αáí«Γδ ß τ¿ß½á¼¿ ß »½áóáεΘÑ⌐ Γ«τ¬«⌐, ñ½∩ Γ«ú«, τΓ«íδ
- »«ñσ«ñ∩ΘÑÑ ¬«½¿τÑßΓó« µÑ½«τ¿ß½Ñ¡¡δσ ¬«¼á¡ñ ¼«ú½« íδΓ∞ óδ»«½¡Ñ¡« íѺ Γ«ú«,
- τΓ«íδ »«ßΓáó¿Γ∞ ¼«ñπ½∞ «íαáí«Γ¬¿ «»Ñαᵿ⌐ ß »½áóáεΘÑ⌐ Γ«τ¬«⌐ ó ß«ßΓ«∩¡¿Ñ
- «ª¿ñá¡¿∩ ¼«¼Ñ¡Γá, ¬«úñá ¼«ªÑΓ íδΓ∞ óδ»«½¡Ñ¡á ß½ÑñπεΘá∩ ¬«¼á¡ñá óδτ¿ß½Ñ¡¿⌐
-
- ß »½áóáεΘÑ⌐ Γ«τ¬«⌐. Æá¬«Ñ ¿º¼Ñ¡Ñ¡¿Ñ »«α∩ñ¬á ¬«¼á¡ñ Γá¬ªÑ ó½¿∩ÑΓ ¡á
- ߬«α«ßΓ∞ αáí«Γδ ó ¬«¼í¿¡áµ¿¿ »α«µÑßß«α 386/¼áΓѼáΓ¿τÑ߬¿⌐ ß«»α«µÑßß«α 387,
- «ñ¡á¬« ¬«½¿τÑßΓó« Γá¬Γ«ó, ¿ß»«½∞ºπѼ«Ñ »α«µÑßß«α«¼, ¡á¼¡«ú« ¼Ñ¡∞ΦÑ, τѼ
- ¬«½¿τÑßΓó« Γá¬Γ«ó, ¿ß»«½∞ºπѼ«Ñ ¼áΓѼáΓ¿τÑ߬¿¼ ß«»α«µÑßß«α«¼ 387 ñ½∩
- óδ»«½¡Ñ¡¿∩ «ñ¡¿σ ¿ ΓÑσ ªÑ ñÑ⌐ßΓó¿⌐ ¡áñ τ¿ß½á¼¿ ß »½áóáεΘÑ⌐ Γ«τ¬«⌐.
- èᬠ¡á»«¼¿¡á¡¿Ñ, ºá»«¼¡¿ΓÑ, τΓ« ½εí«Ñ »α«ßΓ«Ñ »ÑαѼÑΘÑ¡¿Ñ ¿½¿ π»«α∩ñ«τÑ¡¿Ñ
- τ¿ßѽ ß »½áóáεΘÑ⌐ Γ«τ¬«⌐ ñ«½ª¡« óδ»«½¡∩Γ∞ß∩ ¡Ñ »α¿ »«¼«Θ¿ ¼«ñπ½∩ «íαáí«Γ¬¿
- «»Ñαᵿ⌐ ß »½áóáεΘÑ⌐ ºá»∩Γ«⌐, á »α¿ »«¼«Θ¿ µÑ½«τ¿ß½Ñ¡¡«ú« ¼«ñπ½∩ ß
- µÑ½«τ¿ß½Ñ¡¡δ¼¿ ªÑ ¬«¼á¡ñἿ. Æá¬ªÑ ¬«¼á¡ñá FWAIT ¡¿¬«úñá ¡Ñ ΓαÑíπÑΓß∩ ñ½∩
- óδ»«½¡Ñ¡¿∩ »α«ßΓÑ⌐Φ¿σ óδτ¿ß½Ñ¡¿⌐ ß »½áóáεΘÑ⌐ Γ«τ¬«⌐.
-
-
- `¬`ñG.9. ÅαÑΣ¿¬ß¡δÑ ¬«ñδ «»Ñαᵿ⌐ `*
-
- ìá ½εí«¼ ¿ß »α«µÑßß«α«ó óßÑ »αÑΣ¿¬ß¡δÑ ¬«ñδ «»Ñαᵿ⌐, ó¬½ετá∩ 0Fh,
- »ÑαѬαδΓ¿Ñ ßÑú¼Ñ¡Γá, αẼÑα¡«ßΓ∞/áñαÑßᵿ∩ «»Ñαá¡ñá, í½«¬¿α«ó¬á Φ¿¡,
- »«óΓ«αδ ¿ Γᬠñá½ÑÑ ΓαÑíπÑΓ ñ«»«½¡¿Γѽ∞¡δσ Γá¬Γ«ó »α«µÑßß«αá ñ½∩
- ñѬ«ñ¿α«óá¡¿∩. ¥Γ¿ Γá¬Γδ ¼«úπΓ íδΓ∞ »ÑαѬαδΓδ ºá ßτÑΓ óδ»«½¡Ñ¡¿∩
- »αÑñδñπΘ¿σ ¬«¼á¡ñ, Ñß½¿ «¡¿ ΓαÑíπεΓ í«½ÑÑ «ñ¡«ú« Γá¬Γá ñ½∩ ßó«Ñú«
- óδ»«½¡Ñ¡¿∩.
- ü«½ÑÑ Γ«ú«, íδßΓαÑÑ íπñÑΓ »αÑ«íαẫóáΓ∞ 16-αáºα∩ñ¡δ⌐ «»Ñαá¡ñ ó
- 32-αáºα∩ñ¡δ⌐ ¿ ºáΓѼ αáí«ΓáΓ∞ ß 32-αáºα∩ñ¡δ¼ º¡áτÑ¡¿Ñ¼, ó¼ÑßΓ« Γ«ú«, τΓ«íδ
- ¿ß»«½∞º«óáΓ∞ »αÑΣ¿¬ß 66h ñ½∩ αáí«Γδ ß 16-αáºα∩ñ¡δ¼ «»Ñαá¡ñ«¼.
- àß½¿ ¿ß»«½∞ºπÑΓß∩ »αÑΣ¿¬ß¡δ⌐ ¬«ñ «»Ñαᵿ¿, »«»δΓá⌐ΓÑß∞ »ÑαÑπ»«α∩ñ«τ¿Γ∞
- ¬«¼á¡ñδ Γᬿ¼ «íαẫ¼, τΓ«íδ ¬«¼á¡ñá ß »αÑΣ¿¬ß«¼ ßΓ«∩½á ß½Ññ«¼ ºá
- ¬«¼á¡ñ«⌐, ¬«Γ«α«⌐ ñ½∩ óδ»«½¡Ñ¡¿∩ ΓαÑíπÑΓß∩ ¡Ñ߬«½∞¬« Γá¬Γ«ó.
- ä«»«½¡¿Γѽ∞¡«⌐ »α¿τ¿¡«⌐ ¡Ñ¿ß»«½∞º«óá¡¿∩ 16-αáºα∩ñ¡δσ «»Ñαá¡ñ«ó ∩ó½∩ÑΓß∩
- Γ«, τΓ« Ñß½¿ »α¿Ñ¼¡¿¬«¼ ¬«¼á¡ñδ ∩ó½∩ÑΓß∩ 16-αáºα∩ñ¡δ⌐ αÑú¿ßΓα ¿
- ¡Ñ»«ßαÑñßΓóÑ¡¡« ß½ÑñπεΘá∩ ºá ¡Ñ⌐ ¬«¼á¡ñá ¿ß»«½∞ºπÑΓ φëà αÑú¿ßΓα ó
- ¬áτÑßΓóÑ 32-αáºα∩ñ¡«ú« «»Ñαá¡ñá, Γ« íπñÑΓ ¡á½áúáΓ∞ß∩ «ñ¿¡ ΦΓαáΣ¡«⌐ Γá¬Γ.
- èᬠ¿ αá¡ÑÑ, φΓ¿ ñóÑ ¬«¼á¡ñδ ñ«½ª¡δ íδΓ∞ «Γñѽѡδ ñαπú «Γ ñαπúá ¬á¬«⌐-½¿í«
- ¿¡«⌐ ¬«¼á¡ñ«⌐ ñ½∩ Γ«ú«, τΓ«íδ ¿ºíѪáΓ∞ ΦΓαáΣá.
-
-
- `¬`ñG.10. ÅÑαѬαδóáεΘ¿Ñß∩ Γá¬Γδ`*
-
- èᬠπªÑ π»«¼¿¡á½«ß∞ óδΦÑ, ¿¼ÑÑΓß∩ ¡Ñ߬«½∞¬« ß¿Γπᵿ⌐ »α¿ ¬«Γ«αδσ ¬«¼á¡ñÑ
- ΓαÑíπεΓß∩ ñ½∩ óδ»«½¡Ñ¡¿∩ ñ«»«½¡¿Γѽ∞¡δÑ Γá¬Γδ »α«µÑßß«αá, ¡« ¡Ñ¬«Γ«αδÑ ¿º
- φΓ¿σ Γá¬Γ«ó ¼«úπΓ íδΓ∞ »ÑαѬαδΓδ ñαπú ºá ßτÑΓ ñαπúá. Å«φΓ«¼π ¬«¼á¡ñδ,
- ¿ß»«½∞ºπεΘ¿Ñ ¼¡«ú«τ¿ß½Ñ¡¡δÑ ó«º¼«ª¡«ßΓ¿, «»¿ßá¡¡δÑ αá¡ÑÑ, ¡Ñ «í∩ºáΓѽ∞¡«
- íπñπΓ ¿¼ÑΓ∞ ΦΓαáΣ¡«Ñ óαѼ∩, ¬«Γ«α«Ñ αáó¡∩ÑΓß∩ ßπ¼¼áα¡«¼π ¬«½¿τÑßΓóπ
- ΦΓαáΣ«ó «Γñѽ∞¡δσ ¬«¼á¡ñ.
-
- é τáßΓ¡«ßΓ¿, »ÑαѬαδóáεΓß∩ ß½ÑñπεΘ¿Ñ ¬«¼í¿¡áµ¿¿ :
-
- - ì὿τ¿Ñ ¿¡ñѬߡ«ú« αÑú¿ßΓαá ¿ ¡Ñ»«ßαÑñßΓóÑ¡¡«ú« º¡áτÑ¡¿∩ ó¼ÑßΓÑ ß«
- ß¼ÑΘÑ¡¿Ñ¼ ó »á¼∩Γ¿ íπñÑΓ ßΓ«¿Γ∞ óßÑú« «ñ¿¡ ΦΓαáΣ¡«⌐ Γá¬Γ »α«µÑßß«αá.
- - ì὿τ¿Ñ »αÑΣ¿¬ß¡«ú« ¬«ñá «»Ñαᵿ¿ ¿ ¿ß»«½∞º«óá¡¿Ñ αÑú¿ßΓαá αѺπ½∞ΓáΓá
- »αÑñδñπΘÑ⌐ «»Ñαᵿ¿ ó ¬áτÑßΓóÑ íẫó«ú« αÑú¿ßΓαá íπñÑΓ ßΓ«¿Γ∞ óßÑú« «ñ¿¡
- ΦΓαáΣ¡«⌐ Γá¬Γ »α«µÑßß«αá.
- - ì὿τ¿Ñ »αÑΣ¿¬ß¡«ú« ¬«ñá «»Ñαᵿ¿ ß½Ññ«¼ ºá ¬«¼á¡ñ«⌐, ΓαÑíπεΘÑ⌐ ñ½∩
- óδ»«½¡Ñ¡¿∩ ¡Ñ߬«½∞¬« Γá¬Γ«ó »α«µÑßß«αá, ¡Ñ ¡á½áúáÑΓ ¡¿¬á¬¿σ ñ«»«½¡¿Γѽ∞¡δσ
- ΦΓαáΣ¡δσ Γá¬Γ«ó »α«µÑßß«αá.
-
-
- `¬`ñG.11 Éπ¬«ó«ñßΓó« »« ¿ß»«½∞º«óá¡¿ε «ßΓá½∞¡δσ ¬«¼á¡ñ`*
-
- î¡«ªÑßΓó« ¬«¼á¡ñ »α«µÑßß«α«ó 386 ß«ºñáóὫß∞ ¿ßσ«ñ∩ ¿º ¡Ñ¬«Γ«α«ú« «»δΓá
- »αá¬Γ¿τÑ߬«ú« »α«úαá¼¼¿α«óá¡¿∩. î¡«ªÑßΓó« φΓ¿σ »αá¬Γ¿τÑ߬¿σ ¡áí½εñÑ¡¿⌐
- «¬áºá½«ß∞ »«½Ñº¡δ¼ ñ½∩ »α«úαá¼¼¿α«óá¡¿∩ ¡á ∩ºδ¬Ñ áßßѼí½Ñαá »α«µÑßß«αá
- i486, ¿ ¼«ªÑΓ «¬áºáΓ∞ß∩ ßἫ »« ßÑíÑ ¿¡ΓÑαÑß¡δ¼ »α¿ ß«ºñá¡¿¿ ¬«¼»¿½∩Γ«α«ó.
-
- - êß»«½∞ºπ⌐ΓÑ αÑú¿ßΓα EAX úñÑ Γ«½∞¬« 󫺼«ª¡«. î¡«ú¿Ñ ¬«¼á¡ñδ ßΓá¡«ó∩Γß∩
- ¡á «ñ¿¡ íá⌐Γ ¬«α«τÑ »α¿ ¿ß»«½∞º«óá¡¿¿ αÑú¿ßΓαá EAX, ΓᬿÑ, ¬á¬ ºáúαπº¬á ó
- »á¼∩Γ∞ ¿ ß«σαá¡Ñ¡¿Ñ ¿º »á¼∩Γ¿ »α¿ ¿ß»«½∞º«óá¡¿¿ áíß«½εΓ¡δσ áñαÑß«ó,
- »ÑαÑßδ½¬á º¡áτÑ¡¿⌐ ó ñαπú¿Ñ αÑú¿ßΓαδ »α¿ »«¼«Θ¿ ¬«¼á¡ñδ XCHG, ¿ ¬«¼á¡ñδ,
- ¬«Γ«αδÑ ¿ß»«½∞ºπεΓ ¡Ñ»«ßαÑñßΓóÑ¡¡δÑ º¡áτÑ¡¿∩ ó ¬áτÑßΓóÑ «»Ñαá¡ñ«ó.
- - êß»«½∞ºπ⌐ΓÑ »« 󫺼«ª¡«ßΓ¿ ßÑú¼Ñ¡Γ D-ñá¡¡δσ. 諼á¡ñδ, αáí«ΓáεΘ¿Ñ ß
- D-»α«ßΓαá¡ßΓó«¼, ¡á «ñ¿¡ íá⌐Γ ¬«α«τÑ ¬«¼á¡ñ, ¬«Γ«αδÑ ¿ß»«½∞ºπεΓ ñαπú¿Ñ
- ßÑú¼Ñ¡Γδ ñá¡¡δσ »« »α¿τ¿¡Ñ «ΓßπΓßΓó¿∩ »αÑΣ¿¬ßá »ÑαѬαδΓ¿∩ ßÑú¼Ñ¡Γá.
- - Åα¿ñáóá⌐ΓÑ «ß«í«Ñ º¡áτÑ¡¿Ñ ¬«α«Γ¬¿¼ «ñ¡«-, ñóπσ- ¿ ΓαÑσíá⌐Γ¡δ¼ ¬«¼á¡ñá¼.
- Æá¬ ¬á¬ ¬«¼á¡ñδ »α«µÑßß«αá i486 ¡áτ¿¡áεΓß∩ ¿ ºá¬á¡τ¿óáεΓß∩ ¡á úαá¡¿µáσ
- íá⌐Γ«ó, 󫺼«ª¡« íπñÑΓ «íÑß»Ñτ¿Γ∞ Γá¬«Ñ ¬«ñ¿α«óá¡¿Ñ ¬«¼á¡ñ, ¬«Γ«α«Ñ íπñÑΓ
- í«½ÑÑ ¬«¼»á¬Γ¡δ¼ »« «Γ¡«ΦÑ¡¿ε ¬ ¬«ñ¿α«óá¡¿ε ñ½∩ »α«µÑßß«α«ó, ¿ß»«½∞ºπεΘ¿σ
- ¼¡«ªÑßΓó« ¬«¼á¡ñ, óδα«ó¡Ñ¡¡δσ »« úαá¡¿µá¼ ß½«ó. 諼á¡ñá ó« ¼¡«ªÑßΓóÑ
- ¬«¼á¡ñ ß óδαáó¡¿ó᡿Ѽ »« ß½«óá¼ ñ«½ª¡á ¿¼ÑΓ∞ ñ½¿¡π ó ñóá ¿½¿ τÑΓδαÑ íá⌐Γá
- (¿½¿ í«½ÑÑ). Å«íá⌐Γ¡«Ñ óδαáó¡¿óá¡¿Ñ ß«¬αáΘáÑΓ αẼÑα¡«ßΓ∞ ¬«ñá ¿
- πóѽ¿τ¿óáÑΓ ß¬«α«ßΓ∞ óδ»«½¡Ñ¡¿∩ ¬«¼á¡ñ.
- - Å«½πτá⌐ΓÑ ñ«ßΓπ» ¬ 16-αáºα∩ñ¡δ¼ ñá¡¡δ¼ »α¿ »«¼«Θ¿ ¬«¼á¡ñ MOVSX ¿ MOVZX.
- ¥Γ¿ ¬«¼á¡ñδ ¿ß»«½∞ºπεΓ αáßΦ¿αÑ¡¿Ñ »« º¡á¬π ¿ αáßΦ¿αÑ¡¿Ñ »« ¡π½ε «»Ñαá¡ñ«ó
- ñ½¿¡«⌐ ó ß½«ó« ñ« ñ½¿¡δ ó ñó«⌐¡«Ñ ß½«ó«. ¥Γ« ß«¬αáΘáÑΓ ¡Ñ«íσ«ñ¿¼«ßΓ∞ ó
- ¿ß»«½∞º«óá¡¿¿ ñ«»«½¡¿Γѽ∞¡δσ ¬«¼á¡ñ ñ½∩ ¿¡¿µ¿á½¿ºáµ¿¿ ßΓáαΦÑú« ß½«óá.
- - ä½∩ ߬«αÑ⌐ΦÑú« «Γ¬½¿¬á ¡á »αÑαδóá¡¿Ñ ¿ß»«½∞ºπ⌐ΓÑ »α¿ 󫺼«ª¡«ßΓ¿
- »αÑαδóá¡¿Ñ MNI.
-
- - é¼ÑßΓ« ¿ß»«½∞º«óá¡¿∩ ¬«¼á¡ñδ ENTER ¡á ½Ñ¬ß¿τÑ߬«¼ πα«ó¡Ñ 0, ¿ß»«½∞ºπ⌐ΓÑ
- Σαáú¼Ñ¡Γ ¬«ñá, á¡á½«ú¿τ¡δ⌐ ß½ÑñπεΘѼπ :
-
- PUSH EBP
- MOV EBP, ESP
- SUB ESP, BYTE_COUNT
- ¥Γ«Γ Σαáú¼Ñ¡Γ óδ»«½¡∩ÑΓß∩ ºá ßѼ∞ Γá¬Γ«ó, á ¡Ñ ºá ñÑß∩Γ∞.
-
- æ½ÑñπεΘ¿Ñ πσ¿ΘαÑ¡¿∩ ¼«ª¡« »α¿¼Ñ¡∩Γ∞ ó ¬áτÑßΓóÑ «»Γ¿¼¿ºáµ¿¿ ߬«α«ßΓ¿ αáí«Γδ
- ß¿ßΓÑ¼δ »«ß½Ñ Γ«ú«, ¬á¬ ÑÑ «ß¡«ó¡δÑ ¬«¼á¡ñδ í뫨 αÑ὿º«óá¡δ :
-
- - 諼á¡ñδ »ÑαÑσ«ñá ¿ß»«½∞ºπεΓß∩ ó ñóπσ «ß¡«ó¡δσ Σ«α¼áσ : «ñ¡á ¿º Σ«α¼
- ¿¼ÑÑΓ ¡Ñ»«ßαÑñßΓóÑ¡¡«Ñ ó«ß∞¼¿í¿Γ«ó«Ñ º¡áτÑ¡¿Ñ ñ½∩ óδ»«½¡Ñ¡¿∩
- «Γ¡«ß¿Γѽ∞¡«ú« »ÑαÑσ«ñá ó ñ¿á»áº«¡Ñ «Γ 128 íá⌐Γ ¡áºáñ ñ« 127 íá⌐Γ ó»ÑαÑñ,
- ñαπú«⌐ Σ«α¼«⌐ ∩ó½∩ÑΓß∩ »«½¡«Ñ 32-αáºα∩ñ¡«Ñ ß¼ÑΘÑ¡¿Ñ. î¡«ú¿Ñ »α«úαá¼¼¿ßΓδ
- ¡á áßßѼí½ÑαÑ ¿ß»«½∞ºπεΓ ñ½¿¡¡πε Σ«α¼π ó ß¿Γπᵿ∩σ, ¬«úñá ¼«ªÑΓ íδΓ∞
- ¿ß»«½∞º«óá¡á ¬«α«Γ¬á∩ Σ«α¼á. è«úñá ß«óÑαΦÑ¡¡« ∩ß¡«, τΓ« ¼«ªÑΓ íδΓ∞
- ¿ß»«½∞º«óá¡á ¬«α«Γ¬á∩ Σ«α¼á, ∩ó¡« π¬áª¿ΓÑ, τΓ« «»Ñαá¡ñ-»α¿Ñ¼¡¿¬ ¿¼ÑÑΓ
- αẼÑα¡«ßΓ∞ ó «ñ¿¡ íá⌐Γ. ¥Γ« »«ñ߬áªÑΓ áßßѼí½Ñαπ, τΓ« ¡áñ« ¿ß»«½∞º«óáΓ∞
- ¬«α«Γ¬πε Σ«α¼π. àß½¿ áßßѼí½Ñα ¡Ñ »«ññÑনóáÑΓ φΓπ Σπ¡¬µ¿ε, «¡ óδñáßΓ
- «Φ¿í¬π. ÄíαáΓ¿ΓÑ ó¡¿¼á¡¿Ñ ¡á Γ«, τΓ« ¡Ñ¬«Γ«αδÑ áßßѼí½Ñαδ óδ»«½¡∩εΓ Γá¬πε
- «»Γ¿¼¿ºáµ¿ε áóΓ«¼áΓ¿τÑ߬¿.
- - êß»«½∞ºπ⌐ΓÑ αÑú¿ßΓα ESP ñ½∩ ßß佫¬ ¡á ßΓѬ ¡á ßἫ¼ ú½πí«¬«¼ πα«ó¡Ñ
- 󽫪ѡ¡«ßΓ¿ »«ñ»α«úαá¼¼. ìÑ íÑß»«¬«⌐ΓÑß∞ «Γ¡«ß¿Γѽ∞¡« ºáñá¡¿∩ º¡áτÑ¡¿∩
- αÑú¿ßΓαá EBP ¿ ßΓѬá ñá¡¡δσ.
- - ä½∩ íδßΓαÑ⌐ΦÑú« »ÑαѬ½ετÑ¡¿∩ ºáñáτ ¿ß»«½∞ºπ⌐ΓÑ »α«úαá¼¼¡«Ñ »ÑαѬ½ετÑ¡¿Ñ
- ºáñáτ. ¥Γ« »«ºó«½∩ÑΓ ºá»«¼¿¡áΓ∞ ¿ ó«ßßΓá¡áó½¿óáΓ∞ ¼Ñ¡∞Φ¿Ñ »« «íΩѼπ ñá¡¡δÑ
- « ß«ßΓ«∩¡¿¿ »α«µÑßß«αá. 漫Γα¿ â½áóπ 7 ñ½∩ «íßπªñÑ¡¿∩ ó«»α«ß«ó
- ¼¡«ú«ºáñáτ¡«ßΓ¿.
- - êß»«½∞ºπ⌐ΓÑ ¬«¼á¡ñπ LEA ñ½∩ ß½«ªÑ¡¿∩ αÑú¿ßΓα«ó. è«úñá ó ¬«¼á¡ñÑ LEA
- ¿ß»«½∞ºπεΓß∩ íẫóδ⌐ αÑú¿ßΓα ¿ ¿¡ñѬߡδ⌐ αÑú¿ßΓα, ó «»Ñαá¡ñ-»α¿Ñ¼¡¿¬
- ºáúαπªáÑΓß∩ ¿σ ßπ¼¼á. æ«ñÑন¼«Ñ ¿¡ñѬߡ«ú« αÑú¿ßΓαá ¼«ªÑΓ íδΓ∞
- ¼áßΦΓáí¿α«óá¡« ¬αáΓ¡« 2, 4 ¿½¿ 8.
- - êß»«½∞ºπ⌐ΓÑ ¬«¼á¡ñπ LEA ñ½∩ »α¿íáó½Ñ¡¿∩ ¬«¡ßΓá¡Γδ ¬ αÑú¿ßΓαπ. è«úñá ó
- ¬«¼á¡ñÑ LEA ¿ß»«½∞ºπεΓß∩ íẫóδ⌐ αÑú¿ßΓα ¿ ß¼ÑΘÑ¡¿Ñ, ßπ¼¼á ºáúαπªáÑΓß∩ ó
- »α¿Ñ¼¡¿¬. 諼á¡ñá LEA ¼«ªÑΓ íδΓ∞ ¿ß»«½∞º«óá¡á ó¼ÑßΓÑ ß íẫóδ¼ αÑú¿ßΓα«¼,
- ¿¡ñÑ¬ß¡δ¼ αÑú¿ßΓα«¼, Σá¬Γ«α«¼ ¼áßΦΓáí¿α«óá¡¿∩ ¿ ß¼ÑΘÑ¡¿Ñ¼.
- - êß»«½∞ºπ⌐ΓÑ ¬«¼á¡ñδ »ÑαѼÑΘÑ¡¿∩ µÑ½δσ ñ½∩ »ÑαÑñáτ¿ ñá¡¡δσ Σ«α¼áΓá ß
- »½áóáεΘÑ⌐ Γ«τ¬«⌐.
- - êß»«½∞ºπ⌐ΓÑ Σ«α¼π ¬«¼á¡ñδ RET ß ¡Ñ»«ßαÑñßΓóÑ¡¡δ¼ º¡áτÑ¡¿Ñ¼ ñ½á ßτÑΓτ¿¬á
- íá⌐Γ, á ¡Ñ ¬«¼á¡ñπ ADD ESP. ¥Γ« ß«σαá¡∩ÑΓ »α¿ óδ»«½¡Ñ¡¿¿ «ñ¿¡ Γá¬Γ«óδ⌐
- µ¿¬½ ¿ Γα¿ íá⌐Γá ¡á ¬áªñδ⌐ óδº«ó »«ñ»α«úαá¼¼δ.
- - è«úñá óδ»«½¡∩ÑΓß∩ ¡Ñ߬«½∞¬« «íαáΘÑ¡¿⌐ ¬ »ÑαѼѡ¡«⌐, áñαÑßπѼ«⌐ ß«
- ß¼ÑΘÑ¡¿Ñ¼, ºáúαπº¿ΓÑ ß¼ÑΘÑ¡¿Ñ ó αÑú¿ßΓα.
- - 諼á¡ñδ PUSH ¿ POP, ¬«úñá ¿ß»«½∞ºπεß∩ ó¼ÑßΓÑ ß «»Ñαá¡ñ«¼ ó »á¼∩Γ¿,
- ¿ß»«½∞ºπεΓ ¡á ñóá í«½∞ΦÑ Γá¬Γ«ó »α«µÑßß«αá, τѼ φ¬ó¿óá½Ñ¡Γ¡á∩
- ñóπσ¬«¼á¡ñ¡á∩ »«ß½Ññ«óáΓѽ∞¡«ßΓ∞, ¬«Γ«αá∩ »ÑαÑñáÑΓ «»Ñαá¡ñδ τÑαѺ αÑú¿ßΓαδ
- «íΘÑú« ¡áº¡áτÑ¡¿∩ »ÑαÑñ ºá¡ÑßÑ¡¿Ñ¼ ¿σ ó ßΓѬ ¿ ó«ßßΓá¡«ó½Ñ¡¿Ñ¼ ¿º ßΓѬá.
- - 諼á¡ñá LOOP ¿ß»«½∞ºπÑΓ »α¿ óδ»«½¡Ñ¡¿¿ ¡á ñóá Γá¬Γ«óδσ µ¿¬½á í«½∞ΦÑ, τѼ
- φ¬ó¿óá½Ñ¡Γ¡«Ñ π¼Ñ¡∞ΦÑ¡¿Ñ ßτÑΓτ¿¬á ¿ ¬«¼á¡ñá πß½«ó¡«ú« »ÑαÑσ«ñá.
- - 諼á¡ñá JECXZ ¿ß»«½∞ºπÑΓ »α¿ óδ»«½¡Ñ¡¿¿ ¡á «ñ¿¡ Γá¬Γ«óδ⌐ µ¿¬½ í«½∞ΦÑ,
- τѼ φ¬ó¿óá½Ñ¡Γ¡«Ñ ßαáó¡Ñ¡¿Ñ ¿ ¬«¼á¡ñá πß½«ó¡«ú« »ÑαÑσ«ñá.
-
-