ΠΠ³ΡΠ° Β«ΠΠΌΠ΅ΠΉΠΊΠ°Β»
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌ (ΠΠ‘) ΠΈΠ»ΠΈ ΠΌΠ°ΡΠΈΠ½ΠΎΠ·Π°Π²ΠΈΡΠΈΠΌΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΠΠ‘. ΠΡΠΈΡΠ΅ΠΌ ΠΏΠΎΠ΄Π°Π²Π»ΡΡΡΠ΅Π΅ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΠ‘ Π² Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ ΠΏΠΈΡΡΡ Π½Π° Π‘ΠΈ — ΡΠ·ΡΠΊΠ΅ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ Π±ΡΠ» ΡΠΎΠ·Π΄Π°Π½ Π΄Π»Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΠΏΠ΅ΡΠ²ΡΡ Π²Π΅ΡΡΠΈΠΉ UNIX. ΠΠ΅Π±ΠΎΠ»ΡΡΠΈΠ΅ ΠΊΡΡΠΎΡΠΊΠΈ ΠΠ‘, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π·Π°Π³ΡΡΠ·ΡΠΈΠΊ ΠΠ‘, ΡΡΠΎΠ²Π΅Π½Ρ Π°Π±ΡΡΡΠ°Π³ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΎΡ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ (hardware abstraction layer) ΠΈ ΡΠ΄ΡΠΎ, ΡΠ°ΡΡΠΎ ΠΏΠΈΡΡΡΡΡ Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ… Π§ΠΈΡΠ°ΡΡ Π΅ΡΡ >
ΠΠ³ΡΠ° Β«ΠΠΌΠ΅ΠΉΠΊΠ°Β» (ΡΠ΅ΡΠ΅ΡΠ°Ρ, ΠΊΡΡΡΠΎΠ²Π°Ρ, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½Π°Ρ)
ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
ΠΡΡΠ΅ΠΌΠΌΠ±Π»Π΅Ρ (ΠΎΡ Π°Π½Π³Π». assembler — ΡΠ±ΠΎΡΡΠΈΠΊ) — ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ½Π°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°, ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΠΎΠΉ Π½Π° ΡΠ·ΡΠΊΠ΅ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ°, Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π° ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠΌ ΡΠ·ΡΠΊΠ΅.
ΠΠ°ΠΊ ΠΈ ΡΠ°ΠΌ ΡΠ·ΡΠΊ (Π°ΡΡΠ΅ΠΌΠ±Π»Π΅Ρ), Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΡ, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΉ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ΅, ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΈ Π²Π°ΡΠΈΠ°Π½ΡΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ° ΡΠ·ΡΠΊΠ°. ΠΠΌΠ΅ΡΡΠ΅ Ρ ΡΠ΅ΠΌ ΡΡΡΠ΅ΡΡΠ²ΡΡΡ ΠΌΡΠ»ΡΡΠΈΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½ΡΠ΅ ΠΈΠ»ΠΈ Π²ΠΎΠ²ΡΠ΅ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΠ΅ (ΡΠΎΡΠ½Π΅Π΅, ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΠΎ-ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΠ΅, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Π½Π° ΡΠ·ΡΠΊΠ΅ Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ Π½Π΅Π»ΡΠ·Ρ Π½Π°ΠΏΠΈΡΠ°ΡΡ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΠΎ-Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ) Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° ΡΠ°Π·Π½ΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°Ρ ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ . Π‘ΡΠ΅Π΄ΠΈ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ Π²ΡΠ΄Π΅Π»ΠΈΡΡ Π³ΡΡΠΏΠΏΡ ΠΊΡΠΎΡΡ-Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠΎΠ², ΡΠΏΠΎΡΠΎΠ±Π½ΡΡ ΡΠΎΠ±ΠΈΡΠ°ΡΡ ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄ ΠΈ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ (ΡΠ°ΠΉΠ»Ρ) Π΄Π»Ρ Π΄ΡΡΠ³ΠΈΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡ ΠΈ ΠΠ‘.
ΠΡΡΠ΅ΠΌΠ±Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π΅ ΠΏΠ΅ΡΠ²ΡΠΌ ΠΈ Π½Π΅ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌ ΡΡΠ°ΠΏΠΎΠΌ Π½Π° ΠΏΡΡΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»Π½ΠΈΠΌΠΎΠ³ΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. Π’Π°ΠΊ, ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ Ρ ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ Π²ΡΠ΄Π°ΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π² Π²ΠΈΠ΄Π΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π° ΡΠ·ΡΠΊΠ΅ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ°, ΠΊΠΎΡΠΎΡΡΡ Π² Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅Ρ. Π’Π°ΠΊΠΆΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ Π°ΡΡΠ΅ΠΌΠ±Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π΅ ΠΈΡΠΏΠΎΠ»Π½ΠΈΠΌΡΠΉ, Π° ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΡΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΡΠ°Π·ΡΠΎΠ·Π½Π΅Π½Π½ΡΠ΅ ΠΈ Π½Π΅ΠΏΡΠΈΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Π΄ΡΡΠ³ ΠΊ Π΄ΡΡΠ³Ρ ΡΠ°ΡΡΠΈ ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΈ Π΄Π°Π½Π½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΈΠ· ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ (ΠΈΠ»ΠΈ ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΡΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ) Π² Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ-ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΡΠΈΠΊΠ° («Π»ΠΈΠ½ΠΊΠ΅ΡΠ°») ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²Π°Π½ ΠΈΡΠΏΠΎΠ»Π½ΠΈΠΌΡΠΉ ΡΠ°ΠΉΠ».
1. Π―Π·ΡΠΌΠΊ Π°ΡΡΠ΅ΠΌΠΌΠ±Π»Π΅ΡΠ° Π―Π·ΡΠΌΠΊ Π°ΡΡΠ΅ΠΌΠΌΠ±Π»Π΅ΡΠ° — ΡΠ·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ, ΠΌΠ½Π΅ΠΌΠΎΠ½ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ (Π·Π° ΡΠ΅Π΄ΠΊΠΈΠΌ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ) ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡΠΌ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° Π²ΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ. Π’ΡΠ°Π½ΡΠ»ΡΡΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π² ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΉ ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠΎΠΌ (ΠΎΡ Π°Π½Π³Π». assembler — ΡΠ±ΠΎΡΡΠΈΠΊ) — ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΎΠΉ-ΡΡΠ°Π½ΡΠ»ΡΡΠΎΡΠΎΠΌ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΈ Π΄Π°Π»Π° ΡΠ·ΡΠΊΡ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° Π΅Π³ΠΎ Π½Π°Π·Π²Π°Π½ΠΈΠ΅.
1.1 Π‘ΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅ ΡΠ·ΡΠΊΠ° ΠΠΎΠΌΠ°Π½Π΄Ρ ΡΠ·ΡΠΊΠ° Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°. Π€Π°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ, ΠΎΠ½ΠΈ ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΡΠΎΠ±ΠΎΠΉ Π±ΠΎΠ»Π΅Π΅ ΡΠ΄ΠΎΠ±Π½ΡΡ Π΄Π»Ρ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠ° ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΡ ΡΠΎΡΠΌΡ Π·Π°ΠΏΠΈΡΠΈ — ΠΌΠ½Π΅ΠΌΠΎΠΊΠΎΠ΄Ρ — ΠΊΠΎΠΌΠ°Π½Π΄ ΠΈ ΠΈΡ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ². ΠΡΠΈ ΡΡΠΎΠΌ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΡΠ·ΡΠΊΠ° Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ² ΠΊΠΎΠΌΠ°Π½Π΄ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°.
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΡΠ·ΡΠΊ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΌΠ΅ΡΠΊΠΈ Π²ΠΌΠ΅ΡΡΠΎ Π°Π΄ΡΠ΅ΡΠΎΠ² ΡΡΠ΅Π΅ΠΊ ΠΏΠ°ΠΌΡΡΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈ Π°ΡΡΠ΅ΠΌΠ±Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ Π·Π°ΠΌΠ΅Π½ΡΡΡΡΡ Π½Π° Π²ΡΡΠΈΡΠ»ΡΠ΅ΠΌΡΠ΅ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠΎΠΌ ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΡΠΈΠΊΠΎΠΌ Π°Π±ΡΠΎΠ»ΡΡΠ½ΡΠ΅ ΠΈΠ»ΠΈ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π°Π΄ΡΠ΅ΡΠ°, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠ°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ (ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ°, Π½Π΅ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΠΈΠΌΡΠ΅ Π² ΠΌΠ°ΡΠΈΠ½Π½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°, Π° Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠ΅ ΡΠ°ΠΌΠΈΠΌ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠΎΠΌ).
ΠΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ, Π² ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, Π²ΠΊΠ»ΡΡΠ°ΡΡ Π±Π»ΠΎΠΊΠΈ Π΄Π°Π½Π½ΡΡ , Π·Π°Π΄Π°ΡΡ Π°ΡΡΠ΅ΠΌΠ±Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΏΠΎ ΡΡΠ»ΠΎΠ²ΠΈΡ, Π·Π°Π΄Π°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΌΠ΅ΡΠΎΠΊ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ°ΠΊΡΠΎΠΊΠΎΠΌΠ°Π½Π΄Ρ Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ.
ΠΠ°ΠΆΠ΄Π°Ρ ΠΌΠΎΠ΄Π΅Π»Ρ (ΠΈΠ»ΠΈ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²ΠΎ) ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠ² ΠΈΠΌΠ΅Π΅Ρ ΡΠ²ΠΎΠΉ Π½Π°Π±ΠΎΡ — ΡΠΈΡΡΠ΅ΠΌΡ — ΠΊΠΎΠΌΠ°Π½Π΄ ΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ Π΅ΠΌΡ ΡΠ·ΡΠΊ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ°. ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠ΅ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΡ ΡΠ·ΡΠΊΠΎΠ² Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° — Intel-ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ ΠΈ AT&T-ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ.
Π‘ΡΡΠ΅ΡΡΠ²ΡΡΡ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΡ, ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΠΈΠ΅ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠ³ΠΎ ΡΠ·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ (Forth, Lisp, ΠΠ»Ρ-76). Π€Π°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ, Π² ΡΠ°ΠΊΠΈΡ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ°Ρ ΠΎΠ½ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΡΠΎΠ»Ρ ΡΠ·ΡΠΊΠΎΠ² Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ°.
1.2 ΠΠΎΡΡΠΎΠΈΠ½ΡΡΠ²Π° ΠΈ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ
ΠΠΎΡΡΠΎΠΈΠ½ΡΡΠ²Π°
Π―Π·ΡΠΊ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΈΡΠ°ΡΡ ΡΠ°ΠΌΡΠΉ Π±ΡΡΡΡΡΠΉ ΠΈ ΠΊΠΎΠΌΠΏΠ°ΠΊΡΠ½ΡΠΉ ΠΊΠΎΠ΄, ΠΊΠ°ΠΊΠΎΠΉ Π²ΠΎΠΎΠ±ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ Π΄Π»Ρ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°.
ΠΡΠ»ΠΈ ΠΊΠΎΠ΄ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π±ΠΎΠ»ΡΡΠΎΠΉ, — Π΄Π°Π½Π½ΡΠ΅, ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΠΎΠ½ ΠΎΠΏΠ΅ΡΠΈΡΡΠ΅Ρ, Π½Π΅ ΠΏΠΎΠΌΠ΅ΡΠ°ΡΡΡΡ ΡΠ΅Π»ΠΈΠΊΠΎΠΌ Π² ΡΠ΅Π³ΠΈΡΡΡΠ°Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°, ΡΠΎ Π΅ΡΡΡ ΡΠ°ΡΡΠΈΡΠ½ΠΎ ΠΈΠ»ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π² ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ, ΡΠΎ ΠΈΡΠΊΡΡΠ½ΡΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΡΠΏΠΎΡΠΎΠ±Π΅Π½ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ ΡΡΠ°Π½ΡΠ»ΡΡΠΎΡΠΎΠΌ Ρ ΡΠ·ΡΠΊΠ° Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌ:
Β· ΡΠΊΠΎΡΠΎΡΡΡ ΡΠ°Π±ΠΎΡΡ — Π·Π° ΡΡΡΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Π²ΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° ΠΈ/ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊ ΠΠ, ΠΏΠ΅ΡΠ΅ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ ;
Β· ΠΎΠ±ΡΡΠΌ ΠΊΠΎΠ΄Π° (Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ Π·Π° ΡΡΡΡ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ²). (Π‘ΠΎΠΊΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΌΠ° ΠΊΠΎΠ΄Π° ΡΠ°ΠΊΠΆΠ΅ Π½Π΅ΡΠ΅Π΄ΠΊΠΎ ΠΏΠΎΠ²ΡΡΠ°Π΅Ρ ΡΠΊΠΎΡΠΎΡΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ.)
ΠΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΉ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ, ΡΡΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, — Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΌΠ΅Π½Π΅Π΅ ΡΠ΅ΡΡΡΡΠΎΠ΅ΠΌΠΊΠΈΠ΅.
ΠΡΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ Π½Π° ΡΠ·ΡΠΊΠ΅ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΡΠΉ Π΄ΠΎΡΡΡΠΏ ΠΊ Π°ΠΏΠΏΠ°ΡΠ°ΡΡΡΠ΅, ΠΈ, Π² ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ:
Β· ΠΏΠΎΡΡΠ°ΠΌ Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π°,
Β· ΡΠ΅Π³ΠΈΡΡΡΠ°ΠΌ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° ΠΈ Π΄Ρ.
Π―Π·ΡΠΊ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° ΡΠ°ΡΡΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΎΠ² ΠΎΠ±ΠΎΡΡΠ΄ΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΡΠ΄ΡΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ (ΠΈΠ»ΠΈ ΠΌΠ°ΡΠΈΠ½ΠΎΠ·Π°Π²ΠΈΡΠΈΠΌΡΡ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌ ΡΠ΄ΡΠ° ΠΠ‘).
Π―Π·ΡΠΊ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ «ΠΏΡΠΎΡΠΈΠ²ΠΎΠΊ» BIOS.
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ·ΡΠΊΠ° Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° ΡΠ°ΡΡΠΎ ΡΠΎΠ·Π΄Π°ΡΡΡΡ ΠΌΠ°ΡΠΈΠ½ΠΎΠ·Π°Π²ΠΈΡΠΈΠΌΡΠ΅ ΠΏΠΎΠ΄ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠ² ΠΈ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΡ ΡΠ·ΡΠΊΠΎΠ² Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅ΡΡΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌ.
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ Π΄ΠΈΠ·Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΏΡΠΈ ΠΎΡΡΡΡΡΡΠ²ΠΈΠΈ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°.
ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ
Π‘Π»ΠΎΠΆΠ½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π°ΠΏΠΈΡΠ°ΡΡ Π½Π° ΡΠ·ΡΠΊΠ΅ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ»ΠΎΠΆΠ½Π΅Π΅ — Π²ΠΏΠ»ΠΎΡΡ Π΄ΠΎ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, ΠΏΠΎ ΠΏΡΠΈΡΠΈΠ½Π΅ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΠΈ, — ΡΠ΅ΠΌ Π½Π° ΡΠ·ΡΠΊΠ΅ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ.
Π ΡΠΈΠ»Ρ ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠΉ ΠΎΡΠΈΠ΅Π½ΡΠ°ΡΠΈΠΈ — «Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ» ΡΡΠΎΠ²Π½Ρ — ΡΠ·ΡΠΊΠ° Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΡ ΡΠ»ΠΎΠΆΠ½Π΅Π΅ ΡΠΈΡΠ°ΡΡ ΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π° Π½ΡΠΌ ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΎΠΉ Π½Π° ΡΠ·ΡΠΊΠ΅ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ. Π ΠΏΠΎΠ΄Π»Π΅ΠΆΠ°ΡΠΈΠΉ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ½ΡΠΉ ΠΊΠΎΠ΄ ΡΡΠ°Π²Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π±ΠΎΠ»ΡΡΠΎΠΉ, — ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π½Π° ΡΠ·ΡΠΊΠ΅ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΡΠ»ΠΈΡΠΊΠΎΠΌ «ΠΌΠ΅Π»ΠΊΠΈΡ » ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² — ΠΌΠ°ΡΠΈΠ½Π½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄. Π‘ΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ, ΡΡΠ»ΠΎΠΆΠ½ΡΡΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΎΡΠ»Π°Π΄ΠΊΠ°, ΡΠ°ΡΡΡΡ ΡΡΡΠ΄ΠΎΡΠΌΠΊΠΎΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, ΡΡΠ°Π²Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π²Π΅Π»ΠΈΠΊΠ° Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΡ ΠΎΡΠΈΠ±ΠΎΠΊ.
Π’ΡΠ΅Π±ΡΠ΅ΡΡΡ Π²ΡΡΠΎΠΊΠ°Ρ ΠΊΠ²Π°Π»ΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°. ΠΠΎΠ΄ Π½Π° Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π±ΡΡΡΡΠ΅Π΅, Π½ΠΎ Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠΉ Π½Π΅ΠΎΠΏΡΡΠ½ΡΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠΌ, ΠΎΠ±ΡΡΠ½ΠΎ ΠΎΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ Ρ ΡΠΆΠ΅ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠΌ Ρ ΡΠ·ΡΠΊΠ° Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ ΠΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΠΌΠ΅Π½ΡΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌΠΈ ΠΈΠ½Π΄ΡΡΡΡΠΈΠ°Π»ΡΠ½ΡΠΌΠΈ ΡΠ·ΡΠΊΠ°ΠΌΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π° ΡΠ·ΡΠΊΠ΅ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° Π½Π΅ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΠΌΡ Π½Π° ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΡ Ρ Π΄ΡΡΠ³ΠΎΠΉ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΎΠΉ ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΊΠ°ΠΊ Π½Π° ΡΡΠΎΠ²Π½Π΅ ΠΌΠ°ΡΠΈΠ½Π½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ ΡΠ°ΠΊ ΠΈ Π½Π° ΡΡΠΎΠ²Π½Π΅ ΠΈΡΡ ΠΎΠ΄Π½ΡΡ ΠΊΠΎΠ΄ΠΎΠ², ΡΡΠΎ Π² ΡΠ»ΡΡΠ°Π΅ Ρ ΡΠ·ΡΠΊΠ°ΠΌΠΈ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° ΠΎΠ΄Π½ΠΎ ΠΈ ΡΠΎ ΠΆΠ΅.
1.3 ΠΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΡΡΠΎΡΠΈΡΠ΅ΡΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΡΠ·ΡΠΊ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° ΠΊΠ°ΠΊ Π²ΡΠΎΡΠΎΠ΅ ΠΏΠΎΠΊΠΎΠ»Π΅Π½ΠΈΠ΅ ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΠΠ. (ΠΡΠ»ΠΈ ΠΏΠ΅ΡΠ²ΡΠΌ ΡΡΠΈΡΠ°ΡΡ ΡΠΈΡΠ»ΠΎΠ²ΡΠ΅ Π΄Π²ΠΎΠΈΡΠ½ΡΠ΅ ΠΊΠΎΠ΄Ρ ΠΌΠ°ΡΠΈΠ½Π½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄.) ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ ΡΠ·ΡΠΊΠ° Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ°, ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π½Π° Π½ΡΠΌ Π±ΠΎΠ»ΡΡΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΡ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠΎΠ² ΠΏΡΠΈΠ²Π΅Π»ΠΈ ΠΊ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΡ ΡΠ·ΡΠΊΠΎΠ² ΡΡΠ΅ΡΡΠ΅Π³ΠΎ ΠΏΠΎΠΊΠΎΠ»Π΅Π½ΠΈΡ — ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ. Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ: Π€ΠΎΡΡΡΠ°Π½, ΠΠΈΡΠΏ, ΠΠΎΠ±ΠΎΠ», ΠΠ°ΡΠΊΠ°Π»Ρ, Π‘ΠΈ ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΡ Π΄Ρ. ΠΠΌΠ΅Π½Π½ΠΎ ΡΠ·ΡΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ ΠΈ ΠΈΡ Π½Π°ΡΠ»Π΅Π΄Π½ΠΈΠΊΠΈ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π² Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Π² ΠΈΠ½Π΄ΡΡΡΡΠΈΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ. ΠΠ΄Π½Π°ΠΊΠΎ ΡΠ·ΡΠΊΠΈ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° ΡΠΎΡ ΡΠ°Π½ΡΡΡ ΡΠ²ΠΎΡ Π½ΠΈΡΡ, ΠΎΠ±ΡΡΠ»ΠΎΠ²Π»ΠΈΠ²Π°Π΅ΠΌΡΡ ΠΈΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌΠΈ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°ΠΌΠΈ Π² ΡΠ°ΡΡΠΈ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈΡ ΡΡΠ΅Π΄ΡΡΠ² ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΉ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ.
ΠΠ° ΡΠ·ΡΠΊΠ΅ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° ΠΏΠΈΡΡΡ ΠΏΠΎΠ΄ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ (Π² Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΡΠ΅Π΄ΠΊΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΏΠΈΡΡΡΡΡ Π½Π° Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅ ΡΠ΅Π»ΠΈΠΊΠΎΠΌ), Π΄Π»Ρ ΠΊΠΎΡΠΎΡΡΡ ΠΊΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈ Π²Π°ΠΆΠ½Ρ:
Β· Π±ΡΡΡΡΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ (Π΄ΡΠ°ΠΉΠ²Π΅ΡΡ);
Β· ΠΎΠ±ΡΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ (Π·Π°Π³ΡΡΠ·ΠΎΡΠ½ΡΠ΅ ΡΠ΅ΠΊΡΠΎΡΡ, Π²ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΠΎΠ΅ (Π°Π½Π³Π». embedded) ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅, ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π΄Π»Ρ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ² ΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠ² Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΡΠΌΠΈ ΡΠ΅ΡΡΡΡΠ°ΠΌΠΈ, Π²ΠΈΡΡΡΡ, ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠ΅ Π·Π°ΡΠΈΡΡ).
Π‘ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π° ΡΠ·ΡΠΊΠ΅ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΡΡ:
ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΠΊΡΠΈΡΠΈΡΠ½ΡΡ ΠΊ ΡΠΊΠΎΡΠΎΡΡΠΈ ΠΏΠΎΠ΄ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°Ρ Π½Π° ΡΠ·ΡΠΊΠ°Ρ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ C++ ΠΈΠ»ΠΈ Pascal. ΠΡΠΎ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π°ΠΊΡΡΠ°Π»ΡΠ½ΠΎ Π΄Π»Ρ ΠΈΠ³ΡΠΎΠ²ΡΡ ΠΏΡΠΈΡΡΠ°Π²ΠΎΠΊ, ΠΈΠΌΠ΅ΡΡΠΈΡ ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ, ΠΈ Π΄Π»Ρ ΠΌΡΠ»ΡΡΠΈΠΌΠ΅Π΄ΠΈΠ°-ΠΊΠΎΠ΄Π΅ΠΊΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΡΠ΅ΠΌΡΡΡΡ Π΄Π΅Π»Π°ΡΡ ΠΌΠ΅Π½Π΅Π΅ ΡΠ΅ΡΡΡΡΠΎΡΠΌΠΊΠΈΠΌΠΈ ΠΈ Π±ΠΎΠ»Π΅Π΅ Π±ΡΡΡΡΡΠΌΠΈ ΠΈ, ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠΌΠΈ.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌ (ΠΠ‘) ΠΈΠ»ΠΈ ΠΌΠ°ΡΠΈΠ½ΠΎΠ·Π°Π²ΠΈΡΠΈΠΌΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΠΠ‘. ΠΡΠΈΡΠ΅ΠΌ ΠΏΠΎΠ΄Π°Π²Π»ΡΡΡΠ΅Π΅ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΠ‘ Π² Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ ΠΏΠΈΡΡΡ Π½Π° Π‘ΠΈ — ΡΠ·ΡΠΊΠ΅ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ Π±ΡΠ» ΡΠΎΠ·Π΄Π°Π½ Π΄Π»Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΠΏΠ΅ΡΠ²ΡΡ Π²Π΅ΡΡΠΈΠΉ UNIX. ΠΠ΅Π±ΠΎΠ»ΡΡΠΈΠ΅ ΠΊΡΡΠΎΡΠΊΠΈ ΠΠ‘, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π·Π°Π³ΡΡΠ·ΡΠΈΠΊ ΠΠ‘, ΡΡΠΎΠ²Π΅Π½Ρ Π°Π±ΡΡΡΠ°Π³ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΎΡ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ (hardware abstraction layer) ΠΈ ΡΠ΄ΡΠΎ, ΡΠ°ΡΡΠΎ ΠΏΠΈΡΡΡΡΡ Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ½ΡΡ Π²ΡΡΠ°Π²ΠΎΠΊ ΠΈΠ»ΠΈ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ½ΡΡ ΠΏΠΎΠ΄ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ. Π€Π°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ, Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π² ΡΠ΄ΡΠ°Ρ Windows ΠΈΠ»ΠΈ Linux ΡΠΎΠ²ΡΠ΅ΠΌ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π°Π²ΡΠΎΡΡ ΡΡΡΠ΅ΠΌΡΡΡΡ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΠΌΠΎΡΡΡ ΠΈ Π½Π°Π΄ΡΠΆΠ½ΠΎΡΡΡ, Π½ΠΎ, ΡΠ΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΎΠ½ ΡΠ°ΠΌ ΠΏΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ. ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ Π»ΡΠ±ΠΈΡΠ΅Π»ΡΡΠΊΠΈΠ΅ ΠΠ‘, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ MenuetOS, ΡΠ΅Π»ΠΈΠΊΠΎΠΌ Π½Π°ΠΏΠΈΡΠ°Π½Ρ Π½Π° ΡΠ·ΡΠΊΠ΅ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ°. ΠΡΠΈ ΡΡΠΎΠΌ MenuetOS ΠΏΠΎΠΌΠ΅ΡΠ°Π΅ΡΡΡ Π½Π° Π΄ΠΈΡΠΊΠ΅ΡΡ ΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΌΠ½ΠΎΠ³ΠΎΠΎΠΊΠΎΠ½Π½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ. ΠΡΠΈ ΡΡΠΎΠΌ ΠΏΠΎ ΠΏΡΠΈΡΠΈΠ½Π΅ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΠΈ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ Π±ΠΎΠ»ΡΡΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ Π½Π° Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅ Π½Π° MenuetOS Π½Π΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΈΠΌΠ΅ΡΡΠ΅Π³ΠΎ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΡΡ ΡΠ΅Π½Π½ΠΎΡΡΡ ΠΏΡΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ, Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΏΠΎ ΠΏΡΠΈΡΠΈΠ½Π΅ Π²ΡΡΠΎΠΊΠΎΠΉ ΡΠ½ΡΡΠΎΠΏΠΈΠΈ Π½Π΅ ΡΡΠΎΠ»Ρ Π²Π΅Π»ΠΈΠΊΠ°, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π±Ρ ΠΎΠΆΠΈΠ΄Π°ΡΡ ΠΎΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π½Π°ΠΏΠΈΡΠ°Π½Π½ΠΎΠ³ΠΎ ΡΠ΅Π»ΠΈΠΊΠΎΠΌ Π½Π° Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅ ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ² (ΠΠ) ΠΈ Π΄ΡΡΠ³ΠΈΡ Π²ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠ². ΠΠΎ ΠΌΠ½Π΅Π½ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° Π’Π°Π½Π΅Π½Π±Π°ΡΠΌΠ°, ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ ΠΠ ΠΏΠΎΠ²ΡΠΎΡΡΠ΅Ρ ΠΈΡΡΠΎΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΠ² Π½ΠΎΠ²Π΅ΠΉΡΠ΅Π³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. ΠΠ° ΡΠ΅Π³ΠΎΠ΄Π½ΡΡΠ½ΠΈΠΉ Π΄Π΅Π½Ρ Π΄Π»Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΠ Π²Π΅ΡΡΠΌΠ° ΡΠ°ΡΡΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ Π½Π΅ΡΠ΅Π΄ΠΊΠΎ, Π½ΠΎ ΡΠΆΠ΅ ΡΠ΅ΠΆΠ΅, ΡΠ΅ΠΌ ΡΠ·ΡΠΊΠΈ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ. Π ΠΠ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°ΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ Π±Π°ΠΉΡΡ ΠΈ Π±ΠΈΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ ΡΡΠ΅ΠΉΠΊΠ°ΠΌΠΈ ΠΏΠ°ΠΌΡΡΠΈ. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΠ Π²Π΅ΡΡΠΌΠ° Π²Π°ΠΆΠ½ΠΎ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ, ΠΏΠΎ ΠΌΠ½Π΅Π½ΠΈΡ Π’Π°Π½Π΅Π½Π±Π°ΡΠΌΠ°, Π² Π°Π²ΡΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ ΠΈ ΠΊΠ²Π°ΡΡΠΈΡΠ΅ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠ²ΠΈΠ»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠ° Π² ΡΡΠ΅Π΄Π½Π΅ΠΌ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ 50 ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ².
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΎΠ². ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΠ°ΡΡΠΊΠΈ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΎΠ², ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡΡ Π½Π° ΡΠ·ΡΠΊΠ΅ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ°. Π₯ΠΎΡΡ Π² ΡΠ΅Π»ΠΎΠΌ Π² Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Π΄ΡΠ°ΠΉΠ²Π΅ΡΡ ΡΠ°ΠΊΠΆΠ΅ ΡΡΠ°ΡΠ°ΡΡΡΡ ΠΏΠΈΡΠ°ΡΡ Π½Π° ΡΠ·ΡΠΊΠ°Ρ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ Π² ΡΠ²ΡΠ·ΠΈ Ρ ΠΏΠΎΠ²ΡΡΠ΅Π½Π½ΡΠΌΠΈ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡΠΌΠΈ ΠΊ Π½Π°Π΄ΡΠΆΠ½ΠΎΡΡΠΈ ΠΈ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠ² ΠΈ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΡΠΌ ΡΠΎΠ²Π΅ΡΡΠ΅Π½ΡΡΠ²ΠΎΠΌ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠ² Ρ ΡΠ·ΡΠΊΠΎΠ² Π²ΡΡΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ. ΠΠ°Π΄ΡΠΆΠ½ΠΎΡΡΡ Π΄Π»Ρ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΎΠ² ΠΈΠ³ΡΠ°Π΅Ρ ΠΎΡΠΎΠ±ΡΡ ΡΠΎΠ»Ρ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π² Windows NT ΠΈ UNIX (Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ Π² Linux) Π΄ΡΠ°ΠΉΠ²Π΅ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ ΡΠ΄ΡΠ°. ΠΠ΄Π½Π° ΠΎΡΠΈΠ±ΠΊΠ° Π² Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ ΠΊΡΠ°Ρ Ρ Π²ΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΡ.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π°Π½ΡΠΈΠ²ΠΈΡΡΡΠΎΠ² ΠΈ Π΄ΡΡΠ³ΠΈΡ Π·Π°ΡΠΈΡΠ½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ.
ΠΠ°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΡΠ°Π½ΡΠ»ΡΡΠΎΡΠΎΠ² ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
1.4 Π‘Π²ΡΠ·ΡΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ Π½Π° ΡΠ°Π·Π½ΡΡ ΡΠ·ΡΠΊΠ°Ρ ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΠΆΠ΅ Π½Π°ΡΠΈΠ½Π°Ρ Ρ ΡΠΏΠΎΡ ΠΈ ΡΡΠ΅ΡΡΠ΅Π³ΠΎ ΠΏΠΎΠΊΠΎΠ»Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΠ² Π½Π° ΡΠ·ΡΠΊΠ΅ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° ΡΠ°ΡΡΠΎ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ Π»ΠΈΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ, ΠΈΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ²ΡΠ·ΡΠ²Π°ΡΡ Ρ ΠΎΡΡΠ°Π»ΡΠ½ΡΠΌΠΈ ΡΠ°ΡΡΡΠΌΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠΌΠΈ Π½Π° Π΄ΡΡΠ³ΠΈΡ ΡΠ·ΡΠΊΠ°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ (ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΡΠ΅Π³Π΄Π° Π½Π° ΡΠ·ΡΠΊΠ°Ρ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ).
ΠΡΠΎ Π΄ΠΎΡΡΠΈΠ³Π°Π΅ΡΡΡ Π΄Π²ΡΠΌΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌΠΈ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌΠΈ:
ΠΠ° ΡΠ°Π·Π΅ ΡΡΠ°Π½ΡΠ»ΡΡΠΈΠΈ — Π²ΡΡΠ°Π²ΠΊΠ° Π² ΡΠ΅ΠΊΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π° ΡΠ·ΡΠΊΠ΅ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ½ΡΡ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠΎΠ² (Π°Π½Π³Π». inline assembler) Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ² ΡΠ·ΡΠΊΠ°. Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, Π΄Π°Π½Π½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ ΡΠ·ΡΠΊΠ°ΠΌΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π‘ΠΈ ΠΈ Delphi), Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΉ Π½Π° ΡΠ·ΡΠΊΠ΅ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ°. Π‘ΠΏΠΎΡΠΎΠ± ΡΠ΄ΠΎΠ±Π΅Π½ Π΄Π»Ρ Π½Π΅ΡΠ»ΠΎΠΆΠ½ΡΡ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠΉ Π΄Π°Π½Π½ΡΡ , Π½ΠΎ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, Ρ Π΄Π°Π½Π½ΡΠΌΠΈ ΠΈ ΠΏΠΎΠ΄ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°ΠΌΠΈ, Π²ΠΊΠ»ΡΡΠ°Ρ ΠΏΠΎΠ΄ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΡΠΎ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎΠΌ Π²Ρ ΠΎΠ΄ΠΎΠ² ΠΈ Π²ΡΡ ΠΎΠ΄ΠΎΠ², Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΡ ΡΠ·ΡΠΊΠΎΠΌ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ, Ρ Π΅Π³ΠΎ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ΄Π΅Π»Π°ΡΡ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ.
ΠΠ° ΡΡΠ°ΠΏΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ ΠΏΡΠΈ ΡΠ°Π·Π΄Π΅Π»ΡΠ½ΠΎΠΉ ΡΡΠ°Π½ΡΠ»ΡΡΠΈΠΈ. ΠΠ»Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½ΡΠ΅ΠΌΡΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ, ΡΡΠΎΠ±Ρ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ — ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΠ΅ Π² ΠΎΠ΄Π½ΠΈΡ ΠΌΠΎΠ΄ΡΠ»ΡΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ Π² Π΄ΡΡΠ³ΠΈΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π»ΠΈ ΡΠΎΠ³Π»Π°ΡΠ΅Π½ΠΈΡ Π²ΡΠ·ΠΎΠ²Π° (Π°Π½Π³Π». calling conventions) ΠΈ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ , ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΡΠ΅ Π² Π±Π°Π·ΠΎΠ²ΠΎΠΌ ΡΠ·ΡΠΊΠ΅ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠ³ΠΎ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ³ΠΎ ΡΡΠ΅Π΄ΡΡΠ²Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ. ΠΠ°ΠΏΠΈΡΠ°Π½Ρ ΠΆΠ΅ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π½Π° Π»ΡΠ±ΡΡ Π΄ΡΡΠ³ΠΈΡ ΡΠ·ΡΠΊΠ°Ρ , Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΈ Π½Π° ΡΠ·ΡΠΊΠ΅ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ°.
2. ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅Ρ Π³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π²ΠΈΠΆΡΡΠΈΡ ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ. ΠΠ° ΡΠ΅ΡΠ½ΠΎΠΌ ΡΠΊΡΠ°Π½Π΅ Π΄Π²ΠΈΠΆΠ΅ΡΡΡ Π±Π΅Π»Π°Ρ ΠΏΠΎΠ»ΠΎΡΠΊΠ° «Π·ΠΌΠ΅ΠΉΠΊΠ°», ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΡΡ ΠΊΠ»Π°Π²ΠΈΡΠ°ΠΌΠΈ «Π²Π²Π΅ΡΡ », «Π²Π½ΠΈΠ·», «Π²ΠΏΡΠ°Π²ΠΎ» ΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ «Π²Π»Π΅Π²ΠΎ». Π¦Π΅Π»Ρ ΠΈΠ³ΡΡ ΡΠΎΡΡΠΎΠΈΡ Π² ΡΠΎΠΌ ΡΡΠΎΠ±Ρ «ΠΏΠΎΠ΅Π΄Π°ΡΡ», Ρ. Π΅. Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π½Π°ΠΆΠ°ΡΠΈΠΉ ΡΠΏΡΠ°Π²Π»ΡΡΡΠΈΡ ΠΊΠ»Π°Π²ΠΈΡ Π½Π°ΠΏΡΠ°Π²ΠΈΡΡ «Π·ΠΌΠ΅ΠΉΠΊΡ» Π½Π° Π±Π΅Π»ΡΠΉ ΠΊΠ²Π°Π΄ΡΠ°ΡΠΈΠΊ ΠΊΠΎΡΠΎΡΡΠΉ Π² ΡΡΠΎΡ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΏΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ Π½Π° ΡΠΊΡΠ°Π½Π΅. ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΡΠ²Π΅Π»ΠΈΡΠΈΡ Π΄Π»ΠΈΠ½Ρ «Π·ΠΌΠ΅ΠΉΠΊΠΈ» Π½Π° Π΄Π»ΠΈΠ½Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ° «ΡΡΠ΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ» Π΅Ρ. ΠΠ΅Π»ΡΠ΅ ΠΊΠ²Π°Π΄ΡΠ°ΡΠΈΠΊΠΈ ΠΏΠΎΡΠ²Π»ΡΡΡΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΠΎ Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΈΠ³ΡΡ ΠΎΠ±Π»Π°ΡΡΠΈ. ΠΠ³ΡΠ° ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΡΡΡ Π΄ΠΎ ΡΠ΅Ρ ΠΏΠΎΡ ΠΏΠΎΠΊΠ° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π΅ Π½Π°ΠΆΠΌΠ΅Ρ ΠΊΠ»Π°Π²ΠΈΡΡ «Esc» ΠΈΠ»ΠΈ «Π·ΠΌΠ΅ΠΉΠΊΠ°» Π½Π΅ ΠΏΠ΅ΡΠ΅ΡΠ΅ΡΠ΅Ρ ΡΠ°ΠΌΠ° ΡΠ΅Π±Ρ, ΡΠΎΠ³Π΄Π° Π½Π°ΡΡΡΠΏΠΈΡ ΠΊΠΎΠ½Π΅Ρ ΠΈΠ³ΡΡ. ΠΡΠ΅ ΠΎΠ΄Π½Π° ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡ ΠΈΠ³ΡΡ ΡΡΠΎ Π΅ΡΠ»ΠΈ «Π·ΠΌΠ΅ΠΉΠΊΠ° ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ°Π΅ΡΡΡ ΠΊ Π³ΡΠ°Π½ΠΈΡΠ°ΠΌ ΠΎΠΊΠΎΡΠΊΠ° ΡΠΎ ΠΎΠ½Π° ΠΏΠΎΡΠ²ΠΈΡΡΡΡ Π½Π° ΡΠΎΠΌ ΠΆΠ΅ ΡΡΠΎΠ²Π½Π΅ ΠΎΠΊΠ½Π° ΡΠΎΠ»ΡΠΊΠΎ Ρ Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ ΡΠ΅Π°Π½Ρ ΠΈΠ³ΡΡ.
ΠΠΎΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π½Π° ΡΠ·ΡΠΊΠ΅ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° ΠΈ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π° Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Flat assembler (FASM) ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΠΌΡΠΌ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠΏΡΠΎΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠΌ ΡΠ·ΡΠΊΠ° Π°ΡΡΠ΅ΠΌΠ±Π»Π΅Ρ.
Π Π½Π°ΡΠ°Π»ΡΠ½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π·ΠΌΠ΅ΠΉΠΊΠ° Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡΡ ΠΏΠΎΡΠ΅ΡΠ΅Π΄ΠΈΠ½Π΅ Π±Π»ΠΈΠΆΠ΅ ΠΊ Π½ΠΈΠΆΠ½Π΅ΠΌΡ ΠΊΡΠ°Ρ ΠΎΠΊΠ½Π° (Π ΠΈΡ.1).
ΠΠΎΡΠ»Π΅ Π½Π΅ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΈΠ³ΡΡ ΠΈ «ΡΡΠ΅Π²» Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π±Π΅Π»ΡΡ ΠΊΠ²Π°Π΄ΡΠ°ΡΠΎΠ², ΠΌΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ Π·ΠΌΠ΅ΠΉΠΊΡ Π±ΠΎΠ»Π΅Π΅ Π΄Π»ΠΈΠ½Π½ΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ² (Π ΠΈΡ. 2).
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π°ΡΡΠ΅ΠΌΠ±Π»Π΅Ρ ΡΠ·ΡΠΊ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ³ΡΠ° Π Π΄Π°Π½Π½ΠΎΠΉ ΠΊΡΡΡΠΎΠ²ΠΎΠΉ ΡΠ°Π±ΠΎΡΠ΅ Ρ Π½Π°ΡΡΠΈΠ»ΡΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ Π½ΠΈΠ·ΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΠΉ ΡΠ·ΡΠΊ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅Ρ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΡΠΎΡΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠΠ»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° ΡΠ·ΡΠΊΠ΅ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° ΠΌΠ½Π΅ ΠΏΡΠΈΡΠ»ΠΎΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΡ ΠΈ ΡΠ΅Π³ΠΈΡΡΡΠ°ΠΌΠΈ. ΠΠ°ΠΊ ΠΈ Π²ΡΠ΅ ΡΠ·ΡΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π² Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅ ΠΌΡ ΡΡΠΎΠ»ΠΊΠ½ΡΠ»ΠΈΡΡ Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌΠΈ, ΠΈ ΠΎΠ½ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ»ΠΈΡΡ ΠΏΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΌ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π°ΠΌ. Π ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΡΠ°Π±ΠΎΡΡ Π½Π°Π΄ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΎΠΉ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ ΡΠ°ΠΊ ΠΆΠ΅ ΡΠΈΠΊΠ»Ρ ΠΈ ΡΡΠ»ΠΎΠ²Π½ΡΠ΅ ΠΈ Π±Π΅Π·ΡΡΠ»ΠΎΠ²Π½ΡΠ΅ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Ρ.
Π₯ΠΎΡΡ ΠΈ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅Ρ ΠΈ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΡΠ°ΠΌΡΡ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΡ Π½ΠΈΠ·ΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΡ ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΎΠ½ Π½Π΅ ΠΎΡΠ΅Π½Ρ Π²ΠΎΡΡΡΠ΅Π±ΠΎΠ²Π°Π½ ΠΈΠ·-Π·Π° ΡΠΎΠ³ΠΎ ΡΡΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΠΎ-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΡΡ Π±ΠΎΠ»Π΅Π΅ Π±ΠΎΠ³Π°ΡΡΠΉ Π²ΡΠ±ΠΎΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΠ°ΠΊ ΠΆΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡ Π±ΠΎΠ»ΡΡΡΡ ΠΏΠΎΠ½ΡΡΠ½ΠΎΡΡΡ ΠΈ ΠΏΡΠΈΡΡΠ½ΡΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ.
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅
org 100h
mov al, 3
int 16
mov cx,-1
push 0B800h
pop es
mov ax, 255
rep stosw
mov [gs:1Ch*4+2], ds
mov word[gs:1Ch*4], main
push ds
pop fs
push es
pop gs
a:
jmp a
quit:
xor ax, ax
int 21h
main: mov si, snake
mov bp,[fs:snakelen]
mov ax,[fs:bx+snake]
add ax,[fs:step]
mov di,[fs:snake+bp]
mov byte[gs:di], 255
xchg ax, di
cmp ax, di
jne next
add di,[fs:step]
random:rdtsc
and ax, 4094
cmp ax, 3998
ja random
inc ax
mov [fs:snake+bp+2], ax
add [fs:snakelen], 2
next:
xor cx, cx
mov ax, 4000
add di, ax
cmp di, ax
cmovl ax, cx
sub di, ax
cmp di, ax
cmovl ax, cx
sub di, ax
inc bx
inc bx
cmp bx, bp
cmove bx, cx
xor byte[gs:di], 255
je quit
xchg di,[fs:bx+snake]
mov [gs:di], cx
in al, 60h
cbw
mov cx, ax
shld bp, ax, 17
mov dx,[fs:move+bp-144]
sub bp, 144
sub cx, 81
xor cx, bp
cmovnl dx,[fs:step]
mov [fs:step], dx
dec ax
je quit
iret
step dw 2
move dw -160,0,0,-2,0,2,0,0,160
snakelen dw 6
snake dw 2005,2001,2003,2007