ΠΊΠ°ΠΊΠ°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° ΠΈΠ½ΡΠ΅Π» ΠΏΡΠΈΠ²Π΅Π΄Π΅Ρ ΠΊ Π±Π΅Π·ΡΡΠ»ΠΎΠ²Π½ΠΎΠΌΡ vmexit Π½Π° Π³ΠΎΡΡΠ΅Π²ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Π΅
ΠΠΎΠΌΠ°Π½Π΄Π° JMP
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ JMP ΡΠ°ΠΊΠΎΠΉ:
ΠΠΠ’ΠΠΠ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ»Π΅Π΄ΡΡΡΠΈΡ :
ΠΠ΅Π·ΡΡΠ»ΠΎΠ²Π½ΡΠΉ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ Π² ΠΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π²ΡΠ΅Π³Π΄Π° ΠΈ Π² Π»ΡΠ±ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ Π² ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠΎΠ΄Π΅ ΠΈΠΌΠ΅Π΅ΡΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ JMP.
ΠΠΈΠΊΠ°ΠΊΠΈΠ΅ ΡΠ»Π°Π³ΠΈ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΡΡΠΎΠΉ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΡΡ.
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Π±Π΅Π·ΡΡΠ»ΠΎΠ²Π½ΡΠΉ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΌΠ΅ΡΠΊΠ° Π² ΠΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅
Π’Π΅ΠΏΠ΅ΡΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΌΠ΅ΡΠΊΠ° Π² ΠΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅.
ΠΡΠΈΠΌΠ΅Ρ ΠΌΠ΅ΡΠΊΠΈ Π² ΠΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅:
ΠΠ»Ρ ΡΠ΅Π³ΠΎ Π½ΡΠΆΠ½Ρ ΠΌΠ΅ΡΠΊΠΈ?
ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΡΠΏΡΠ°Π²Π»ΡΡΡ Ρ ΠΎΠ΄ΠΎΠΌ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, Π²Π°ΠΌ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π½Π°ΠΏΡΠ°Π²ΠΈΡΡ Ρ ΠΎΠ΄ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡ ΠΈΠ· Π΄Π²ΡΡ ΠΏΡΡΠ΅ΠΉ. Π’ΠΎ Π΅ΡΡΡ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ° Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π΄Π²ΡΡ ΡΡΠ°ΡΡΠΊΠΎΠ² ΠΊΠΎΠ΄Π°.
Π’ΠΎΠ³Π΄Π° ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΡΠ°ΡΡΠΎΠΊ ΠΊΠΎΠ΄Π° ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°Π΅ΡΡΡ ΡΠ²ΠΎΠ΅ΠΉ ΠΌΠ΅ΡΠΊΠΎΠΉ. Π ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π²Ρ Π±ΡΠ΄Π΅ΡΠ΅ ΠΈΠΌΠ΅ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΡΠΎΠΏΡΡΡΠΈΡΡ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΡΡΠ°ΡΡΠΎΠΊ ΠΊΠΎΠ΄Π° ΠΈ ΡΡΠ°Π·Ρ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ Π΄ΡΡΠ³ΠΎΠΌΡ ΡΡΠ°ΡΡΠΊΡ.
ΠΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎΠ± ΡΡΠΎΠΌ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ Π³ΠΎΠ²ΠΎΡΠΈΡΡ ΠΏΡΠΈ ΠΈΠ·ΡΡΠ΅Π½ΠΈΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ ΡΡΠ»ΠΎΠ²Π½ΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π°. ΠΡΠ° ΠΆΠ΅ ΡΡΠ°ΡΡΡ ΠΏΠΎΡΠ²ΡΡΠ΅Π½Π° Π±Π΅Π·ΡΡΠ»ΠΎΠ²Π½ΠΎΠΌΡ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Ρ, ΡΠΎ Π΅ΡΡΡ ΠΊΠΎΠ³Π΄Π° Π½Π°Π΄ΠΎ ΠΏΡΠΎΡΡΠΎ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ Π½ΡΠΆΠ½ΠΎΠΌΡ ΡΡΠ°ΡΡΠΊΡ ΠΊΠΎΠ΄Π° Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ Π»ΠΈΠ±ΠΎ ΡΡΠ»ΠΎΠ²ΠΈΠΉ.
Π ΡΠ·ΡΠΊΠ°Ρ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Π½Π°Π·ΡΠ²Π°ΡΡΡΡ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ, ΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΉ ΡΠ·ΡΠΊΠ° (ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ if. then. else ΠΈΠ»ΠΈ case Π² ΠΠ°ΡΠΊΠ°Π»Π΅).
ΠΡΠΈΠΌΠ΅Ρ Π±Π΅Π·ΡΡΠ»ΠΎΠ²Π½ΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π°
Π‘Π½Π°ΡΠ°Π»Π° Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΠ΄ΡΠΌΠ°Π΅ΠΌ, Π·Π°ΡΠ΅ΠΌ Π½ΡΠΆΠ΅Π½ Π±Π΅Π·ΡΡΠ»ΠΎΠ²Π½ΡΠΉ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄.
ΠΠΎΠ³ΠΈΡΠ½ΡΠΉ Π²ΠΎΠΏΡΠΎΡ: Π΅ΡΠ»ΠΈ ΠΌΡ Π²ΡΠ΅Π³Π΄Π° ΠΈ Π²ΠΎ Π²ΡΠ΅Ρ ΡΠ»ΡΡΠ°ΡΡ ΠΏΡΠΎΠΏΡΡΠΊΠ°Π΅ΠΌ ΡΡΠ°ΡΡΠΎΠΊ ΠΊΠΎΠ΄Π°, ΡΠΎ Π·Π°ΡΠ΅ΠΌ Π½Π°ΠΌ ΡΠΎΠ³Π΄Π° Π²ΠΎΠΎΠ±ΡΠ΅ ΡΡΠΎΡ ΡΡΠ°ΡΡΠΎΠΊ?
ΠΠΎΠΏΡΠΎΡ Π·Π°ΠΊΠΎΠ½ΠΎΠΌΠ΅ΡΠ½ΡΠΉ, Π½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ Π½ΠΎΠ²ΠΈΡΠΊΠ°. ΠΠ° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ Π±ΡΠ²Π°ΡΡ ΡΠ°Π·Π½ΡΠ΅ ΡΠΈΡΡΠ°ΡΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° ΡΡΠΎΡ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ Π½ΡΠΆΠ΅Π½.
ΠΡΠΈΠΌΠ΅Ρ ΠΏΠ΅ΡΠ²ΡΠΉ: Π½Π΅ Π·Π°Π±ΡΠ²Π°ΠΉΡΠ΅, ΡΡΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡΡ ΠΏΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π²Π½ΠΈΠ·, Π½ΠΎ ΠΈ Π²Π²Π΅ΡΡ . Π’Π°ΠΊ ΡΡΠΎ ΠΏΡΠΈ ΠΏΠ΅ΡΠ²ΠΎΠΌ ΠΏΡΠΎΡ ΠΎΠ΄Π΅ ΡΡΠ°ΡΡΠΎΠΊ ΠΊΠΎΠ΄Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠΏΡΡΡΠΈΡΡ, Π½ΠΎ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π΅Π³ΠΎ ΠΏΡΠΈΠ΄ΡΡΡΡ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΡΠ»ΠΎΠ²ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΡΠ²ΡΡΡΡ Π΄Π°Π»ΡΡΠ΅ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅. ΠΠ°ΠΊ-Π½ΠΈΠ±ΡΠ΄Ρ ΡΠ°ΠΊ:
ΠΠ΄Π΅ΡΡ ΠΏΡΠΈ ΠΏΠ΅ΡΠ²ΠΎΠΌ ΠΏΡΠΎΡ ΠΎΠ΄Π΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΌΡ ΠΏΡΠΎΠΏΡΡΠΊΠ°Π΅ΠΌ ΡΡΠ°ΡΡΠΎΠΊ ΠΊΠΎΠ΄Π° 1 ΠΈ ΡΡΠ°Π·Ρ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ ΠΊ ΠΌΠ΅ΡΠΊΠ΅ Label_2 (ΡΠΎ Π΅ΡΡΡ ΠΊΠΎ Π²ΡΠΎΡΠΎΠΌΡ ΡΡΠ°ΡΡΠΊΡ). ΠΠΎ Π²ΠΎ Π²ΡΠΎΡΠΎΠΌ ΡΡΠ°ΡΡΠΊΠ΅ ΠΌΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΡΡ ΠΊ ΡΡΠ°ΡΡΠΊΡ 1 (ΠΊ ΠΌΠ΅ΡΠΊΠ΅ Label_1) ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌ Π΅Π³ΠΎ.
ΠΡΠΈΠΌΠ΅Ρ Π²ΡΠΎΡΠΎΠΉ: ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ°ΠΊ, ΡΡΠΎ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΡΡΠ°ΡΡΠΎΠΊ ΠΊΠΎΠ΄Π° ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΠΎΡΠ»Π°Π΄ΠΊΠΈ. Π’ΠΎΠ³Π΄Π° ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ°ΠΊ:
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ JMP Π·Π°ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π°, ΡΠΎ Π΅ΡΡΡ Π½Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ. Π’Π°ΠΊ ΡΡΠΎ ΠΏΠΎΠΊΠ° Π²Ρ ΠΎΡΠ»Π°ΠΆΠΈΠ²Π°Π΅ΡΠ΅ ΡΠ²ΠΎΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΡΡΠ°ΡΡΠΎΠΊ ΠΊΠΎΠ΄Π° Π΄Π»Ρ ΠΎΡΠ»Π°Π΄ΠΊΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ.
ΠΠΎΠ³Π΄Π° ΠΎΡΠ»Π°Π΄ΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π·Π°ΠΊΠΎΠ½ΡΠ΅Π½Π°, ΠΌΡ ΡΠ±ΠΈΡΠ°Π΅ΠΌ ΡΠΎΡΠΊΡ Ρ Π·Π°ΠΏΡΡΠΎΠΉ ΠΏΠ΅ΡΠ΅Π΄ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠ΅ΠΉ JMP ΠΈ ΠΎΡΠ»Π°Π΄ΠΎΡΠ½ΡΠΉ ΠΊΠΎΠ΄ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π½Π΅ Π±ΡΠ΄Π΅Ρ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π±Π΅Π·ΡΡΠ»ΠΎΠ²Π½ΡΠΉ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ Π½Π° ΠΌΠ΅ΡΠΊΡ Label_2.
Π ΠΏΠΎΡΠ΅ΠΌΡ Π±Ρ ΠΏΡΠΎΡΡΠΎ Π½Π΅ ΡΠ±ΡΠ°ΡΡ ΠΎΡΠ»Π°Π΄ΠΎΡΠ½ΡΠΉ ΠΊΠΎΠ΄?
ΠΠΎΠΆΠ½ΠΎ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, ΠΈ ΡΠ±ΡΠ°ΡΡ. ΠΠΎ Π²Ρ ΡΠ²Π΅ΡΠ΅Π½Ρ, ΡΡΠΎ ΠΎΠ½ Π²Π°ΠΌ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ ΠΏΡΠΈΠ³ΠΎΠ΄ΠΈΡΡΡ?
Π ΠΊΠΎΠ½ΡΠ΅ ΠΊΠ°ΠΊ ΠΎΠ±ΡΡΠ½ΠΎ ΡΠ°ΡΡΠΊΠ°ΠΆΡ, ΠΏΠΎΡΠ΅ΠΌΡ ΡΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ JMP. ΠΡΠΎ ΡΠΎΠΊΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΎΡ Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠ³ΠΎ ΡΠ»ΠΎΠ²Π° JUMP, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π²Π΅ΡΡΠΈ ΠΊΠ°ΠΊ βΠΏΡΡΠΆΠΎΠΊ, ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄β.
ΠΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΉ ΠΌΠΈΡ Intel. ΠΡΠ°ΠΊΡΠΈΠΊΠ°
Π Π΄Π°Π½Π½ΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Ρ Ρ ΠΎΡΡ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅ΡΡ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π°ΡΠΏΠ΅ΠΊΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΡΠΎΡΡΠΎΠ³ΠΎ Π³ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡΠ° Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΠΎΠΉ Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Intel VMX.
ΠΠΏΠΏΠ°ΡΠ°ΡΠ½Π°Ρ Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΠ·ΠΊΠΎΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ ΠΎΠ±Π»Π°ΡΡΡ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΊΠΎΠΌΡΡΠ½ΠΈΡΠΈ, Π² Π ΠΎΡΡΠΈΠΈ ΡΠΆ ΡΠΎΡΠ½ΠΎ. Π― Π½Π°Π΄Π΅ΡΡΡ, ΡΡΠΎ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π» ΡΡΠ°ΡΡΠΈ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΡΠ΅ΠΌ, ΠΊΡΠΎ Π·Π°Ρ ΠΎΡΠ΅Ρ ΠΎΡΠΊΡΡΡΡ Π΄Π»Ρ ΡΠ΅Π±Ρ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΡΡ Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΈ ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ½Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ. ΠΠ°ΠΊ Π±ΡΠ»ΠΎ ΡΠΊΠ°Π·Π°Π½ΠΎ Π² Π½Π°ΡΠ°Π»Π΅, Ρ Ρ ΠΎΡΡ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅ΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΉ Π°ΡΠΏΠ΅ΠΊΡ Π±Π΅Π· ΠΏΠΎΠ³ΡΡΠΆΠ΅Π½ΠΈΡ Π² ΡΠ΅ΠΎΡΠΈΡ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ ΡΡΠΎ ΡΠΈΡΠ°ΡΠ΅Π»Ρ Π·Π½Π°ΠΊΠΎΠΌ Ρ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΎΠΉ x86-64 ΠΈ ΠΈΠΌΠ΅Π΅Ρ Ρ ΠΎΡΡ Π±Ρ ΠΎΠ±ΡΠ΅Π΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ°Ρ VMX. ΠΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΈ ΠΊ ΡΡΠ°ΡΡΠ΅.
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠ°Π±ΠΎΡΡ Π·Π°Π³ΡΡΠ·ΡΠΈΠΊΠ°
ΠΠ»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ Π³ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡ Π·Π°ΠΏΡΡΠΊΠ°Π»ΡΡ ΠΏΡΠΈ ΡΡΠ°ΡΡΠ΅ PC Ρ Π²ΡΠ±ΡΠ°Π» ΡΠ°ΠΌΡΠΉ ΠΏΡΠΎΡΡΠΎΠΉ ΠΏΡΡΡ, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ Π·Π°ΠΏΠΈΡΠ°Π» ΡΠ²ΠΎΠΉ Π·Π°Π³ΡΡΠ·ΡΠΈΠΊ Π² MBR ΡΠ΅ΠΊΡΠΎΡ Π΄ΠΈΡΠΊΠ° Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π° Π³ΠΎΡΡΠ΅Π²Π°Ρ ΠΠ‘. Π’Π°ΠΊ ΠΆΠ΅ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π³Π΄Π΅-ΡΠΎ Π½Π° Π΄ΠΈΡΠΊΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΡΠΈΡΡ ΠΊΠΎΠ΄ Π³ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡΠ°. Π ΠΌΠΎΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅, ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½Π°Ρ MBR ΡΡΠΈΡΡΠ²Π°Π΅Ρ bootloader Π½Π°ΡΠΈΠ½Π°Ρ Ρ 2048 ΡΠ΅ΠΊΡΠΎΡΠ°, ΡΡΠΎ Π΄Π°Π΅Ρ ΡΡΠ»ΠΎΠ²Π½ΠΎ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΡΡ ΠΎΠ±Π»Π°ΡΡΡ Π΄Π»Ρ Π·Π°ΠΏΠΈΡΠΈ Π² (2047 * 512) ΠΠ±. ΠΡΠΎΠ³ΠΎ Π±ΠΎΠ»Π΅Π΅ ΡΠ΅ΠΌ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π΄Π»Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ Π²ΡΠ΅Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² Π³ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡΠ°.
ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π° ΡΡ Π΅ΠΌΠ° ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ Π³ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡΠ° Π½Π° Π΄ΠΈΡΠΊΠ΅, Π²ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Π½Ρ Π² ΡΠ΅ΠΊΡΠΎΡΠ°Ρ .
ΠΡΠΎΡΠ΅ΡΡ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
ΠΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎ ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΈΡΠ°ΡΡ ΡΡΡ.
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠ°Π±ΠΎΡΡ Π³ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡΠ°
ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Π³ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π΅Π³ΠΎ ΠΏΠ΅ΡΠ²Π°Ρ Π·Π°Π΄Π°ΡΠ° Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎΠ±Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠ΅ Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π΅ΠΌΡ ΠΏΡΠ΅Π΄ΡΡΠΎΠΈΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ, Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ Π²ΡΠ·ΡΠ²Π°ΡΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ:
Π‘Π»Π΅Π΄ΡΠ΅Ρ ΠΎΠ±ΡΠ°ΡΠΈΡΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΡΠΎ ΡΡΠΎ ΠΏΠΎΠ»Π΅ limit Π΄Π΅ΡΠΊΡΠΈΠΏΡΠΎΡΠ½ΠΎΠ³ΠΎ ΠΊΡΡΠ° Π΄Π»Ρ ΡΠ΅Π³ΠΌΠ΅Π½ΡΠ½ΡΡ ΡΠ΅Π³ΠΈΡΡΡΠΎΠ² DS ΠΈ ES ΡΠ°Π²Π½ΠΎ 0xFFFFFFFF. ΠΡΠΎ ΠΏΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ unreal mode β ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° x86 ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ΅ΠΉ ΠΎΠ±Ρ ΠΎΠ΄ΠΈΡΡ Π»ΠΈΠΌΠΈΡ ΡΠ΅Π³ΠΌΠ΅Π½ΡΠΎΠ² Π² ΡΠ΅Π°Π»ΡΠ½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅. ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅ΠΉ ΠΎΠ± ΡΡΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΈΡΠ°ΡΡ ΡΡΡ.
ΠΠ°Ρ ΠΎΠ΄ΡΡΡ Π² vmx not-root ΡΠ΅ΠΆΠΈΠΌΠ΅ Π³ΠΎΡΡΠ΅Π²Π°Ρ ΠΠ‘ ΠΌΠΎΠΆΠ΅Ρ ΡΡΠΎΠ»ΠΊΠ½ΡΡΡΡ Ρ ΡΠΈΡΡΠ°ΡΠΈΠ΅ΠΉ, ΠΊΠΎΠ³Π΄Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²Π΅ΡΠ½ΡΡΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Ρ ΠΎΡΡΡ Π² ΡΠ΅ΠΆΠΈΠΌ vmx root. Π ΡΠ°ΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ VM exit Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΡΡΡ ΡΠ΅ΠΊΡΡΠ΅Π΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ vmx non-root ΠΈ Π·Π°Π³ΡΡΠΆΠ°Π΅ΡΡΡ vmx-root. ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ vmx-root Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ InitHostStateArea(), ΠΊΠΎΡΠΎΡΠ°Ρ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ΅Π³ΠΈΡΡΡΠΎΠ²:
ΠΠ°Π»Π΅Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π³ΠΎΡΡΠ΅Π²ΠΎΠ³ΠΎ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π°Π΄ΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π° (ΡΡΠ½ΠΊΡΠΈΡ InitEPT()). ΠΡΠΎ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ°ΠΌΡΡ Π²Π°ΠΆΠ½ΡΡ ΠΌΠΎΠΌΠ΅Π½ΡΠΎΠ² ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ Π³ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡΠ°, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ Π·Π°Π΄Π°Π½Π½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ ΠΈΠ»ΠΈ ΡΠΈΠΏ Π½Π° ΠΊΠ°ΠΊΠΎΠΌ-Π½ΠΈΠ±ΡΠ΄Ρ ΠΈΠ· ΡΡΠ°ΡΡΠΊΠΎΠ² ΠΏΠ°ΠΌΡΡΠΈ ΠΌΠΎΠ³ΡΡ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ ΠΎΡΠΈΠ±ΠΊΠ°ΠΌ ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΠΈ Π½Π΅ ΠΏΡΠΎΡΠ²ΠΈΡΡ ΡΠ΅Π±Ρ ΡΡΠ°Π·Ρ, Π½ΠΎ Ρ Π±ΠΎΠ»ΡΡΠΎΠΉ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡΡ Π±ΡΠ΄ΡΡ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½ΡΠΌ ΡΠΎΡΠΌΠΎΠ·Π°ΠΌ ΠΈΠ»ΠΈ Π·Π°Π²ΠΈΡΠ°Π½ΠΈΡΠΌ Π³ΠΎΡΡΠ΅Π²ΠΎΠΉ ΠΠ‘. Π ΠΎΠ±ΡΠ΅ΠΌ ΠΏΡΠΈΡΡΠ½ΠΎΠ³ΠΎ ΡΡΡ ΠΌΠ°Π»ΠΎ ΠΈ Π»ΡΡΡΠ΅ ΡΠ΄Π΅Π»ΠΈΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅ ΠΏΠ°ΠΌΡΡΠΈ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π²Π½ΠΈΠΌΠ°Π½ΠΈΡ.
ΠΠ° ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΈ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π° ΠΌΠΎΠ΄Π΅Π»Ρ Π³ΠΎΡΡΠ΅Π²ΠΎΠ³ΠΎ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π°Π΄ΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°:
ΠΡΠ°ΠΊ, ΡΡΠΎ ΠΌΡ ΡΡΡ Π²ΠΈΠ΄ΠΈΠΌ:
ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π³ΠΎΡΡΠ΅Π²ΠΎΠ³ΠΎ Π°Π΄ΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΠΌ VM Execution control field (ΡΡΠ½ΠΊΡΠΈΡ InitExecutionControlFields()). ΠΡΠΎ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Π±ΠΎΠ»ΡΡΠΎΠΉ Π½Π°Π±ΠΎΡ ΠΎΠΏΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π·Π°Π΄Π°ΡΡ ΡΡΠ»ΠΎΠ²ΠΈΡ ΡΠ°Π±ΠΎΡΡ Π³ΠΎΡΡΠ΅Π²ΠΎΠΉ ΠΠ‘ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ vmx not-root. ΠΠΎΠΆΠ½ΠΎ, ΠΊ ΠΏΡΠΈΠΌΠ΅ΡΡ, ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊ ΠΏΠΎΡΡΠ°ΠΌ Π²Π²ΠΎΠ΄Π° Π²ΡΠ²ΠΎΠ΄Π° ΠΈΠ»ΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ MSR ΡΠ΅Π³ΠΈΡΡΡΠΎΠ². ΠΠΎ Π½Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ Π±ΠΈΡ Π² ΡΠ΅Π³ΠΈΡΡΡΠ΅ CR0. ΠΠ΅Π»ΠΎ Π² ΡΠΎΠΌ, ΡΡΠΎ 30(CD) ΠΈ 29(NW) Π±ΠΈΡΡ ΠΎΠ±ΡΠΈΠ΅ ΠΊΠ°ΠΊ Π΄Π»Ρ vmx non-root ΡΠ°ΠΊ ΠΈ Π΄Π»Ρ vmx root ΡΠ΅ΠΆΠΈΠΌΠΎΠ² ΠΈ Π΅ΡΠ»ΠΈ Π³ΠΎΡΡΠ΅Π²Π°Ρ ΠΠ‘ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡ ΡΡΠΈ Π±ΠΈΡΡ Π² 1 ΡΡΠΎ Π½Π΅Π³Π°ΡΠΈΠ²Π½ΠΎ ΡΠΊΠ°ΠΆΠ΅ΡΡΡ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ.
ΠΡΠΎΡΠ΅ΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π³ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡΠ° ΠΏΠΎΡΡΠΈ Π·Π°Π²Π΅ΡΡΠ΅Π½, ΠΎΡΡΠ°Π»ΠΎΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π·Π° ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΎΠΌ Π² Π³ΠΎΡΡΠ΅Π²ΠΎΠΉ ΡΠ΅ΠΆΠΈΠΌ vmx non-root ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½ΠΈΠ΅ΠΌ Π² ΡΠ΅ΠΆΠΈΠΌ Ρ ΠΎΡΡΠ° vmx root. ΠΠ°ΡΡΡΠΎΠΉΠΊΠΈ Π·Π°Π΄Π°ΡΡΡΡ Π² ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ:
InitVMEntryControl() Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π° Π² vmx non-root:
ΠΡΠΎΠ³ΠΈ
ΠΠ°ΠΏΠΈΡΠ°Π½Π½ΡΠΉ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΠΈΠΌΠ΅ΡΠ° ΠΊ ΡΡΠ°ΡΡΠ΅ Π³ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡ Π²ΠΏΠΎΠ»Π½Π΅ ΡΠΏΠΎΡΠΎΠ±Π΅Π½ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΡΡ ΡΠ°Π±ΠΎΡΡ Π³ΠΎΡΡΠ΅Π²ΠΎΠΉ ΠΠ‘, Ρ ΠΎΡΡ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ ΠΈ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ Π·Π°ΠΊΠΎΠ½ΡΠ΅Π½Π½ΡΠΌ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ. ΠΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Intel VT-d, ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°, Π½Π΅Ρ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π·Π° ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΡΠΌΠΈ ΠΈ ΡΠ°Π±ΠΎΡΠΎΠΉ ΠΏΠ΅ΡΠΈΡΠ΅ΡΠΈΠΉΠ½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ². Π ΠΎΠ±ΡΠ΅ΠΌ Ρ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π» ΠΏΠΎΡΡΠΈ Π½ΠΈΡΠ΅Π³ΠΎ ΠΈΠ· Π±ΠΎΠ³Π°ΡΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡΠ° ΡΡΠ΅Π΄ΡΡΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Intel Π΄Π»Ρ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΠΎΠΉ Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ. ΠΠΏΡΠΎΡΠ΅ΠΌ, Π΅ΡΠ»ΠΈ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎ Π·Π°ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΠ΅ΡΡΡ Ρ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΡ ΠΏΠΈΡΠ°ΡΡ ΠΏΡΠΎ Intel VMX, ΡΠ΅ΠΌ Π±ΠΎΠ»Π΅Π΅ ΡΡΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ Π΅ΡΡΡ ΠΎ ΡΠ΅ΠΌ.
ΠΠ°, ΡΡΡΡ Π½Π΅ Π·Π°Π±ΡΠ», ΠΎΡΠ»Π°Π΄ΠΊΡ Π³ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡΠ° ΠΈ Π΅Π³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΡΠ΄ΠΎΠ±Π½ΠΎ ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Bochs. ΠΠ° ΠΏΠ΅ΡΠ²ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ ΡΡΠΎ Π½Π΅Π·Π°ΠΌΠ΅Π½ΠΈΠΌΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ. Π ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, Π·Π°Π³ΡΡΠ·ΠΊΠ° Π³ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡΠ° Π² Bochs ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΎΡ Π·Π°Π³ΡΡΠ·ΠΊΠΈ Π½Π° ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠΌ PC. Π ΡΠ²ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Ρ Π΄Π΅Π»Π°Π» ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ ΡΠ±ΠΎΡΠΊΡ ΡΡΠΎΠ±Ρ ΡΠΏΡΠΎΡΡΠΈΡΡ ΡΡΠΎΡ ΠΏΡΠΎΡΠ΅ΡΡ, ΠΏΠΎΡΡΠ°ΡΠ°ΡΡΡ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΈ Π² ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΠΈ ΡΠ°ΠΊ ΠΆΠ΅ Π²ΡΠ»ΠΎΠΆΠΈΡΡ Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ Π² Π±Π»ΠΈΠΆΠ°ΠΉΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ.
MS-DOS ΠΈ TASM 2.0. Π§Π°ΡΡΡ 10. ΠΠΎΠΌΠ°Π½Π΄Ρ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ°.
ΠΠΎΠΌΠ°Π½Π΄Ρ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°.
Π‘ΡΠΎΠΈΡ ΠΏΠΎΡΡΠ½ΠΈΡΡ, ΡΡΠΎ Π΅ΡΠ»ΠΈ ΠΊ Π²ΠΎΠΏΡΠΎΡΡ ΠΏΠΎΠ΄ΠΎΠΉΡΠΈ ΡΠΎΡΠΌΠ°Π»ΡΠ½ΠΎ ΡΡΡΠΎΠ³ΠΎ, ΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° β ΡΡΠΎ Π½Π΅ ΠΎΠ΄Π½ΠΎ ΠΈ ΡΠΎ ΠΆΠ΅. ΠΡΡΠ΅ΠΌΠΌΠ±Π»Π΅Ρ β Ρ ΠΎΡΡ ΠΈ Π½ΠΈΠ·ΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΠΉ ΡΠ·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Π½ΠΎ ΠΈΠ½ΠΎΠ³Π΄Π° ΠΎΠ½ Π±Π΅Π· ΡΠΏΡΠΎΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ° Β«ΠΊΠΎΡΡΠ΅ΠΊΡΠΈΡΡΠ΅Ρ ΠΊΠΎΠ΄ ΠΏΠΎΠ΄ ΡΠ΅Π±ΡΒ». ΠΡΠΈΡΡΠΌ Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° (masm, tasm, fasm) ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎ-ΡΠ°Π·Π½ΠΎΠΌΡ. Π‘Π°ΠΌΡΠΉ ΡΡΠΊΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ β ΠΊΠΎΠΌΠ°Π½Π΄Π° ret. Π Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ½ΠΎΠΌ ΠΊΠΎΠ΄Π΅ ΠΌΡ Π·Π°ΠΏΠΈΡΠ΅ΠΌ ret, Π° ΡΠ΅Π°Π»ΡΠ½ΡΠΉ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅Ρ Π°ΡΡΠ΅ΠΌΠ±Π»ΠΈΡΡΠ΅Ρ Π΅Ρ ΠΊΠ°ΠΊ retf ΠΈΠ»ΠΈ retn 8. ΠΠΎΠΆΠ΅Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΡΡ ΠΊΠΎΠ΄, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π²ΡΡΠ°Π²Π½ΠΈΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ΄Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° nop (ΠΎΠ± ΡΡΠΎΠΌ Π½ΠΈΠΆΠ΅ Π² ΡΡΠ°ΡΡΠ΅) ΠΈ Ρ.ΠΏ. Π§ΡΠΎΠ±Ρ Π½Π΅ ΡΡΠ»ΠΎΠΆΠ½ΡΡΡ ΡΡΡΡ Π²ΠΎΠΏΡΠΎΡΠ°, ΠΏΠΎΠ΄ ΠΏΠΎΠ½ΡΡΠΈΡΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°ΡΡ ΠΎΠ΄Π½ΠΎ ΠΈ ΡΠΎ ΠΆΠ΅.
ΠΠΎΠΌΠ°Π½Π΄Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° (ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ°) Π² Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΡΠ²ΠΎΡΠΌ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π² Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅ Π½Π°Π·ΡΠ²Π°ΡΡΡΡ ΠΎΠΏΠ΅ΡΠ°Π½Π΄Π°ΠΌΠΈ. Π‘ΠΈΡΡΠ΅ΠΌΠ° ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠ² Intel ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π±ΠΎΠ»Π΅Π΅ 300 ΠΊΠΎΠΌΠ°Π½Π΄ (ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°, ΡΠΎΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°, MMX-ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ, XMM-ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ). Π‘ ΠΊΠ°ΠΆΠ΄ΡΠΌ Π½ΠΎΠ²ΡΠΌ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠΌ ΠΈΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ°ΡΡΡΡ. ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°ΡΡ, Π½Π΅ Π½Π°Π΄ΠΎ Π·ΡΠ±ΡΠΈΡΡ ΠΈ ΡΠ°Π·Π±ΠΈΡΠ°ΡΡ Π²ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°. ΠΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠΏΡΠ°Π²ΠΎΡΠ½ΠΈΠΊΠΎΠΌ. Π ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΡΡΠ΅Π½ΠΈΡ ΡΡΠ°ΡΠ΅ΠΉ, Π²Ρ ΠΏΠΎΠΉΠΌΡΡΠ΅, ΡΡΠΎ ΠΎΡΠ½ΠΎΠ²Π½Π°Ρ ΡΡΡΡ Π·Π½Π°Π½ΠΈΡ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° ΡΠΎΡΡΠΎΠΈΡ Π½Π΅ Π² Π΄ΠΎΡΠΊΠΎΠ½Π°Π»ΡΠ½ΠΎΠΌ Π·Π½Π°Π½ΠΈΠΈ Π²ΡΠ΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄, Π° Π² ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠΈ ΡΠ°Π±ΠΎΡΡ ΡΠΈΡΡΠ΅ΠΌΡ.
ΠΠ΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π·Π°Π±ΡΠ²Π°ΡΡ, ΡΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ Π²ΠΈΠ΄ΠΈΡ Π² Π²ΠΈΠ΄Π΅ ΡΠΈΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΠΊΠ°ΠΊ Π΄Π°Π½Π½ΡΠ΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΠΌΠ°Π½Π΄Π° NOP Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ ΠΎΠ΄ΠΈΠ½ Π±Π°ΠΉΡ ΠΈ Π΅Ρ ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄ β 90h.
ΠΠ°ΡΠΈΠ½Π°Ρ ΠΈΠ·ΡΡΠ°ΡΡ ΡΠ·ΡΠΊ Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ, ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΠΌΠ΅ΡΡ Π΄Π΅Π»ΠΎ Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΡΠΌ Π½Π°Π±ΠΎΡΠΎΠΌ ΡΡΠ°ΡΡΡ -Π΄ΠΎΠ±ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°. ΠΠ½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΡΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡΠ°ΠΌ, Π·Π°ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ²Π°Π½Π½ΡΠΌ Π² ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠ΅ΠΉ ΠΊΠΎΠ΄Π°, ΡΠ²ΡΠ·Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΎ ΡΠ»ΠΎΠΆΠ½ΡΠΌΠΈ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ ΡΠ°ΡΡΠ΅ΡΠ°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΎΠ±ΡΡΠΌΠ°.
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ (Ρ.Π½. ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅) ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π»ΡΠ±ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π΄Π»Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌ MS-DOS ΠΈ Windows. ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ°, ΠΊΠΎΡΠΎΡΡΠΌΠΈ Π²Ρ Π±ΡΠ΄Π΅ΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π±ΡΠ΄Π΅Ρ ΡΠ°ΡΡΠΈ ΡΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ ΠΏΡΠΎΡ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΠΊΡΡΡΠ°. ΠΠ»Ρ Π±ΠΎΠ»Π΅Π΅ Π΄Π΅ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ, Π² ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠΈ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠ±ΡΠ°ΡΠΈΡΡΡΡ ΠΊ ΡΠΏΡΠ°Π²ΠΎΡΠ½ΠΈΠΊΡ ΠΊΠΎΠΌΠ°Π½Π΄.
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° Π½Π° ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅.
Π‘ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΡΠ΅Π΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ TASMED ΠΈΠ»ΠΈ Π»ΡΠ±ΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠ³ΠΎ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ° Π½Π°Π±ΠΈΡΠ°Π΅ΠΌ ΠΊΠΎΠ΄. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°, Π·Π°Π΄Π°ΡΡ Π²ΠΎΠΏΡΠΎΡ Π½Π° Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠΌ ΡΠ·ΡΠΊΠ΅ ΠΎ ΠΏΠΎΠ»ΠΎΠ²ΠΎΠΉ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ½ΠΎΡΡΠΈ (ΠΈΠΌΠ΅Π΅ΡΡΡ Π²Π²ΠΈΠ΄Ρ Π²Π°Ρ Π±ΠΈΠΎΠ»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΠΎΠ» ΠΏΡΠΈ ΡΠΎΠΆΠ΄Π΅Π½ΠΈΠΈ). ΠΡΠ»ΠΈ Π²Ρ Π½Π°ΠΆΠΌΠ΅ΡΠ΅ m (Man), Π±ΡΠ΄Π΅Ρ Π²ΡΠ²Π΅Π΄Π΅Π½ΠΎ ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ Ρ ΠΌΡΠΆΡΠΈΠ½ΠΎΠΉ, Π΅ΡΠ»ΠΈ w (Woman), ΡΠΎ Ρ ΠΆΠ΅Π½ΡΠΈΠ½ΠΎΠΉ, ΠΏΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΏΡΠ΅ΠΊΡΠ°ΡΠΈΡ ΡΠ°Π±ΠΎΡΡ. ΠΡΠ»ΠΈ Π±ΡΠ΄Π΅Ρ Π½Π°ΠΆΠ°ΡΠ° Π»ΡΠ±Π°Ρ Π΄ΡΡΠ³Π°Ρ ΠΊΠ»Π°Π²ΠΈΡΠ°, ΡΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΡ, ΡΡΠΎ ΠΈΠΌΠ΅Π΅Ρ Π΄Π΅Π»ΠΎ Ρ Π³ΠΎΠ±Π»ΠΈΠ½ΠΎΠΌ, Π½Π΅ ΠΏΠΎΠ²Π΅ΡΠΈΡ ΠΈ Π±ΡΠ΄Π΅Ρ Π·Π°Π΄Π°Π²Π°ΡΡ Π²Π°ΠΌ Π²ΠΎΠΏΡΠΎΡΡ ΠΎ ΠΏΠΎΠ»ΠΎΠ²ΠΎΠΉ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ½ΠΎΡΡΠΈ, ΠΏΠΎΠΊΠ° Π²Ρ Π½Π΅ ΠΎΡΠ²Π΅ΡΠΈΡΠ΅ Π²Π΅ΡΠ½ΠΎ.
ΠΠΈΡΠ΅ΠΌ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½Ρ
Π ΡΡΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ Ρ ΡΠ°ΡΡΠΊΠ°ΠΆΡ, ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½Ρ (VM), ΡΠΏΠΎΡΠΎΠ±Π½ΡΡ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π° Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ 2048 (ΠΌΠΎΠ΅Π³ΠΎ Π΄ΡΡΠ³Π°) ΠΈΠ»ΠΈ Roguelike (ΠΌΠΎΡ). ΠΡΠ»ΠΈ Π²Ρ ΡΠΌΠ΅Π΅ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°ΡΡ, Π½ΠΎ Ρ ΠΎΡΠΈΡΠ΅ Π»ΡΡΡΠ΅ ΠΏΠΎΠ½ΡΡΡ, ΡΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π²Π½ΡΡΡΠΈ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ° ΠΈ ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠ·ΡΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΡΠΎ ΡΡΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡ Π΄Π»Ρ Π²Π°Ρ. ΠΠ°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠΉ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΡΡΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΡΡΡΠ°ΡΠ½ΡΠΌ, Π½ΠΎ Ρ ΠΎΠ±Π΅ΡΠ°Ρ, ΡΡΠΎ ΡΠ΅ΠΌΠ° ΡΠ΄ΠΈΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΎΡΡΠ°Ρ ΠΈ ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½Π°Ρ.
ΠΠΊΠΎΠ½ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΊΠΎΠ΄ ΡΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΎΠΊΠΎΠ»ΠΎ 250 ΡΡΡΠΎΠΊ Π½Π° C. ΠΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π·Π½Π°ΡΡ Π»ΠΈΡΡ ΠΎΡΠ½ΠΎΠ²Ρ C ΠΈΠ»ΠΈ C++, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π΄Π²ΠΎΠΈΡΠ½Π°Ρ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΠΊΠ°. ΠΠ»Ρ ΡΠ±ΠΎΡΠΊΠΈ ΠΈ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π»ΡΠ±Π°Ρ Unix-ΡΠΈΡΡΠ΅ΠΌΠ° (Π²ΠΊΠ»ΡΡΠ°Ρ macOS). ΠΠ΅ΡΠΊΠΎΠ»ΡΠΊΠΎ API Unix ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄Π»Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π²Π²ΠΎΠ΄Π° ΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ, Π½ΠΎ ΠΎΠ½ΠΈ Π½Π΅ ΡΠ²Π»ΡΡΡΡΡ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠΌΠΈ Π΄Π»Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°. (Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Windows ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΡΠ΅ΡΡΡ).
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: ΡΡΠ° VM β Π³ΡΠ°ΠΌΠΎΡΠ½Π°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°. Π’ΠΎ Π΅ΡΡΡ Π²Ρ ΠΏΡΡΠΌΠΎ ΡΠ΅ΠΉΡΠ°Ρ ΡΠΆΠ΅ ΡΠΈΡΠ°Π΅ΡΠ΅ Π΅Ρ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄! ΠΠ°ΠΆΠ΄ΡΠΉ ΡΡΠ°Π³ΠΌΠ΅Π½Ρ ΠΊΠΎΠ΄Π° Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠΊΠ°Π·Π°Π½ ΠΈ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎΠ±ΡΡΡΠ½ΡΠ½, ΡΠ°ΠΊ ΡΡΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π±ΡΡΡ ΡΠ²Π΅ΡΠ΅Π½Ρ: Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ ΡΠΏΡΡΠ΅Π½ΠΎ. ΠΠΊΠΎΠ½ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΊΠΎΠ΄ ΡΠΎΠ·Π΄Π°Π½ ΡΠΏΠ»Π΅ΡΠ΅Π½ΠΈΠ΅ΠΌ Π±Π»ΠΎΠΊΠΎΠ² ΠΊΠΎΠ΄Π°. Π Π΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΡΡ.
1. ΠΠ³Π»Π°Π²Π»Π΅Π½ΠΈΠ΅
2. ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π°?
ΠΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° β ΡΡΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ Π΄Π΅ΠΉΡΡΠ²ΡΠ΅Ρ ΠΊΠ°ΠΊ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ. ΠΠ½Π° ΠΈΠΌΠΈΡΠΈΡΡΠ΅Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ Π΄ΡΡΠ³ΠΈΠΌΠΈ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΡΠΌΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌΠΈ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΠΊΡ, ΡΡΠΈΡΡΠ²Π°ΡΡ ΠΈΠ· ΠΏΠ°ΠΌΡΡΠΈ ΠΈ Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡ ΡΡΠ΄Π°, Π° ΡΠ°ΠΊΠΆΠ΅ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Ρ ΡΡΡΡΠΎΠΉΡΡΠ²Π°ΠΌΠΈ Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π°, ΡΠ»ΠΎΠ²Π½ΠΎ Π½Π°ΡΡΠΎΡΡΠΈΠΉ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ. Π‘Π°ΠΌΠΎΠ΅ Π³Π»Π°Π²Π½ΠΎΠ΅, VM ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΡΠ·ΡΠΊ, ΠΊΠΎΡΠΎΡΡΠΉ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
Π‘ΠΊΠΎΠ»ΡΠΊΠΎ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΠΈΠΌΠΈΡΠΈΡΡΠ΅Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½Π°Ρ VM β Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ Π΅Ρ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ. ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ VM Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ°. Π£ Π»ΡΠ΄Π΅ΠΉ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅Ρ NES, Π½ΠΎ ΠΌΡ Π²ΡΡ Π΅ΡΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠ³ΡΠ°ΡΡ Π² ΠΈΠ³ΡΡ Π΄Π»Ρ NES, ΠΈΠΌΠΈΡΠΈΡΡΡ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΌ ΡΡΠΎΠ²Π½Π΅. ΠΡΠΈ ΡΠΌΡΠ»ΡΡΠΎΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΎΡΠ½ΠΎ Π²ΠΎΡΡΠΎΠ·Π΄Π°ΡΡ ΠΊΠ°ΠΆΠ΄ΡΡ Π΄Π΅ΡΠ°Π»Ρ ΠΈ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΡΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²Π°.
ΠΡΡΠ³ΠΈΠ΅ VM Π½Π΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡ Π½ΠΈΠΊΠ°ΠΊΠΎΠΌΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΌΡ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΡ, Π° ΡΠ°ΡΡΠΈΡΠ½ΠΎ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡ ΡΡΠ°Π·Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ! Π ΠΏΠ΅ΡΠ²ΡΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΡΡΠΎ Π΄Π΅Π»Π°Π΅ΡΡΡ Π΄Π»Ρ ΠΎΠ±Π»Π΅Π³ΡΠ΅Π½ΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΠ. ΠΡΠ΅Π΄ΡΡΠ°Π²ΡΡΠ΅, ΡΡΠΎ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΡΠ°Π±ΠΎΡΠ°ΡΡΡΡ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ½ΡΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°Ρ . ΠΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° Π΄Π°ΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΠΌΠΎΡΡΡ. ΠΠ΅ Π½ΡΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΡΠ²Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π° ΡΠ°Π·Π½ΡΡ Π΄ΠΈΠ°Π»Π΅ΠΊΡΠ°Ρ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ. ΠΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π΅Π±ΠΎΠ»ΡΡΡΡ VM Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΡΠ·ΡΠΊΠ΅. ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π»ΡΠ±ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ Π»ΠΈΡΡ Π΅Π΄ΠΈΠ½ΠΎΠΆΠ΄Ρ Π½Π° ΡΠ·ΡΠΊΠ΅ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΡΠ΅ΡΠ°Π΅Ρ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ Π²ΡΡΠΎΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΠΉ ΡΠ·ΡΠΊ Π΄Π»Ρ ΡΠ°Π·Π½ΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ½ΡΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡ. VM ΡΠΎΠ·Π΄Π°ΡΡ ΠΎΠ΄Π½Ρ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ CPU, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠΈΠΌΡΠ»ΠΈΡΡΠ΅ΡΡΡ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ . ΠΠ΄Π½ΠΎ ΠΈΠ· ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ² ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ° Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΎΡΡΡΡΡΡΠ²ΡΡΡ Π½Π°ΠΊΠ»Π°Π΄Π½ΡΠ΅ ΡΠ°ΡΡ ΠΎΠ΄Ρ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, ΠΊΠ°ΠΊ Ρ VM. Π₯ΠΎΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ Ρ ΠΎΡΠΎΡΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ, Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ° Π΄Π»Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌ ΠΎΡΠ΅Π½Ρ ΡΡΡΠ΄Π½ΠΎ, ΠΏΠΎΡΡΠΎΠΌΡ VM Π²ΡΡ Π΅ΡΡ ΠΏΠΎΠ»Π΅Π·Π½Ρ. Π ΡΠ΅Π°Π»ΡΠ½ΠΎΡΡΠΈ Π½Π° ΡΠ°Π·Π½ΡΡ ΡΡΠΎΠ²Π½ΡΡ ΠΈ VM, ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΠΎ.
ΠΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° Java (JVM) β ΠΎΡΠ΅Π½Ρ ΡΡΠΏΠ΅ΡΠ½ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ. Π‘Π°ΠΌΠ° JVM ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΡΠ΅Π΄Π½Π΅Π³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ°, ΠΎΠ½Π° Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΌΠ°Π»Π° Π΄Π»Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠΌ. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΈΡΠ°ΡΡ ΠΊΠΎΠ΄ Π΄Π»Ρ ΡΡΡΡΡ ΡΠ°Π·Π½ΠΎΠΎΠ±ΡΠ°Π·Π½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ², Π²ΠΊΠ»ΡΡΠ°Ρ ΡΠ΅Π»Π΅ΡΠΎΠ½Ρ. ΠΠΎΡΠ»Π΅ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ JVM Π½Π° Π½ΠΎΠ²ΠΎΠΌ ΡΡΡΡΠΎΠΉΡΡΠ²Π΅ Π»ΡΠ±Π°Ρ Π½Π°ΠΏΠΈΡΠ°Π½Π½Π°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Java, Kotlin ΠΈΠ»ΠΈ Clojure ΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° Π½ΡΠΌ Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. ΠΠ΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΌΠΈ Π·Π°ΡΡΠ°ΡΠ°ΠΌΠΈ Π±ΡΠ΄ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π°ΠΊΠ»Π°Π΄Π½ΡΠ΅ ΡΠ°ΡΡ ΠΎΠ΄Ρ Π½Π° ΡΠ°ΠΌΡ VM ΠΈ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅Π΅ Π°Π±ΡΡΡΠ°Π³ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΡ ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ. ΠΠ±ΡΡΠ½ΠΎ ΡΡΠΎ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Ρ ΠΎΡΠΎΡΠΈΠΉ ΠΊΠΎΠΌΠΏΡΠΎΠΌΠΈΡΡ.
VM Π½Π΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΈΠ»ΠΈ Π²Π΅Π·Π΄Π΅ΡΡΡΠ½ΠΎΠΉ, ΡΡΠΎΠ±Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΡΠ΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°. Π‘ΡΠ°ΡΡΠ΅ Π²ΠΈΠ΄Π΅ΠΎΠΈΠ³ΡΡ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΠ΅ VM Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΡΠΎΡΡΡΡ ΡΠΊΡΠΈΠΏΡΠΎΠ²ΡΡ ΡΠΈΡΡΠ΅ΠΌ.
VM ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ»Π΅Π·Π½Ρ Π΄Π»Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΠΉ ΠΈΠ·ΠΎΠ»ΡΡΠΈΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ. ΠΠ΄Π½ΠΎ ΠΈΠ· ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΉ β ΡΠ±ΠΎΡΠΊΠ° ΠΌΡΡΠΎΡΠ°. ΠΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΡΠΈΠ²ΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΏΠΎΡΠΎΠ±Π° ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΡΡ ΡΠ±ΠΎΡΠΊΡ ΠΌΡΡΠΎΡΠ° ΠΏΠΎΠ²Π΅ΡΡ C ΠΈΠ»ΠΈ C++, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π²ΠΈΠ΄Π΅ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ ΡΡΠ΅ΠΊ ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅. ΠΠ΄Π½Π°ΠΊΠΎ VM Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Β«Π²Π½Π΅Β» Π·Π°ΠΏΡΡΠ΅Π½Π½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΈ ΠΌΠΎΠΆΠ΅Ρ Π½Π°Π±Π»ΡΠ΄Π°ΡΡ Π²ΡΠ΅ ΡΡΡΠ»ΠΊΠΈ Π½Π° ΡΡΠ΅ΠΉΠΊΠΈ ΠΏΠ°ΠΌΡΡΠΈ Π² ΡΡΠ΅ΠΊΠ΅.
ΠΡΡ ΠΎΠ΄ΠΈΠ½ ΠΏΡΠΈΠΌΠ΅Ρ ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΡΡ ΡΠΌΠ°ΡΡ-ΠΊΠΎΠ½ΡΡΠ°ΠΊΡΡ Ethereum. Π‘ΠΌΠ°ΡΡ-ΠΊΠΎΠ½ΡΡΠ°ΠΊΡΡ β ΡΡΠΎ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΊΠ°ΠΆΠ΄ΡΠΌ ΡΠ·Π»ΠΎΠΌ Π²Π°Π»ΠΈΠ΄Π°ΡΠΈΠΈ Π² Π±Π»ΠΎΠΊΡΠ΅ΠΉΠ½Π΅. Π’ΠΎ Π΅ΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ ΡΠ°Π·ΡΠ΅ΡΠ°ΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° ΡΠ²ΠΎΠΈΡ ΠΌΠ°ΡΠΈΠ½Π°Ρ Π»ΡΠ±ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΡ ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΠΎ Π½Π΅Π·Π½Π°ΠΊΠΎΠΌΡΠΌΠΈ Π»ΡΠ΄ΡΠΌΠΈ, Π±Π΅Π· ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΈΠ·ΡΡΠΈΡΡ ΠΈΡ Π·Π°ΡΠ°Π½Π΅Π΅. Π§ΡΠΎΠ±Ρ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΠΎΠ½ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π½Π° VM, Π½Π΅ ΠΈΠΌΠ΅ΡΡΠ΅ΠΉ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅, ΡΠ΅ΡΠΈ, Π΄ΠΈΡΠΊΡ ΠΈ Ρ.Π΄. Ethereum β ΡΠ°ΠΊΠΆΠ΅ Ρ ΠΎΡΠΎΡΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΠΌΠΎΡΡΠΈ. ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ VM ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΈΡΠ°ΡΡ ΡΠΌΠ°ΡΡ-ΠΊΠΎΠ½ΡΡΠ°ΠΊΡΡ Π±Π΅Π· ΡΡΡΡΠ° ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠ΅ΠΉ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌ.
3. ΠΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ° LC-3
ΠΠ°ΡΠ° VM Π±ΡΠ΄Π΅Ρ ΡΠΈΠΌΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΠΌΡΡΠ»Π΅Π½Π½ΡΠΉ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ LC-3. ΠΠ½ ΠΏΠΎΠΏΡΠ»ΡΡΠ΅Π½ Π΄Π»Ρ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ ΡΡΡΠ΄Π΅Π½ΡΠΎΠ² Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΡ. ΠΠ΄Π΅ΡΡ ΡΠΏΡΠΎΡΡΠ½Π½ΡΠΉ Π½Π°Π±ΠΎΡ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ x86, Π½ΠΎ ΡΠΎΡ ΡΠ°Π½ΡΡΡΡΡ Π²ΡΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π² ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ CPU.
ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , Π½ΡΠΆΠ½ΠΎ ΡΡΠΌΠΈΡΠΈΡΠΎΠ²Π°ΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ. ΠΠΎΠΏΡΡΠ°ΠΉΡΠ΅ΡΡ ΠΏΠΎΠ½ΡΡΡ, ΡΡΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ, Π½ΠΎ Π½Π΅ Π²ΠΎΠ»Π½ΡΠΉΡΠ΅ΡΡ, Π΅ΡΠ»ΠΈ Π½Π΅ ΡΠ²Π΅ΡΠ΅Π½Ρ, ΠΊΠ°ΠΊ ΠΎΠ½ Π²ΠΏΠΈΡΡΠ²Π°Π΅ΡΡΡ Π² ΠΎΠ±ΡΡΡ ΠΊΠ°ΡΡΠΈΠ½Ρ. ΠΠ°ΡΠ½ΡΠΌ Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ°ΠΉΠ»Π° Π½Π° Π‘. ΠΠ°ΠΆΠ΄ΡΠΉ ΡΡΠ°Π³ΠΌΠ΅Π½Ρ ΠΊΠΎΠ΄Π° ΠΈΠ· ΡΡΠΎΠ³ΠΎ ΡΠ°Π·Π΄Π΅Π»Π° ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΏΠΎΠΌΠ΅ΡΡΠΈΡΡ Π² Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΡ ΠΎΠ±Π»Π°ΡΡΡ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΠΈ ΡΡΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°.
ΠΠ°ΠΌΡΡΡ
Π ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅ LC-3 Π΅ΡΡΡ 65 536 ΡΡΠ΅Π΅ΠΊ ΠΏΠ°ΠΌΡΡΠΈ (2 16 ), ΠΊΠ°ΠΆΠ΄Π°Ρ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ 16-ΡΠ°Π·ΡΡΠ΄Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ Ρ ΡΠ°Π½ΠΈΡΡ Π²ΡΠ΅Π³ΠΎ 128 ΠΠ± β Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ΅Π½ΡΡΠ΅, ΡΠ΅ΠΌ Π²Ρ ΠΏΡΠΈΠ²ΡΠΊΠ»ΠΈ! Π Π½Π°ΡΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ ΡΡΠ° ΠΏΠ°ΠΌΡΡΡ Ρ ΡΠ°Π½ΠΈΡΡΡ Π² ΠΏΡΠΎΡΡΠΎΠΌ ΠΌΠ°ΡΡΠΈΠ²Π΅:
Π Π΅Π³ΠΈΡΡΡΡ
Π Π΅Π³ΠΈΡΡΡ β ΡΡΠΎ ΡΠ»ΠΎΡ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π² CPU. Π Π΅Π³ΠΈΡΡΡΡ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ Β«Π²Π΅ΡΡΡΠ°ΠΊΡΒ» CPU. Π§ΡΠΎΠ±Ρ ΠΎΠ½ ΠΌΠΎΠ³ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΠΊΠ°ΠΊΠΈΠΌ-ΡΠΎ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠΎΠΌ Π΄Π°Π½Π½ΡΡ , ΡΠΎΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡΡ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· ΡΠ΅Π³ΠΈΡΡΡΠΎΠ². ΠΠΎ ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΠ΅Π³ΠΈΡΡΡΠΎΠ² Π²ΡΠ΅Π³ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ, Π² Π»ΡΠ±ΠΎΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΎΠ±ΡΡΠΌ Π΄Π°Π½Π½ΡΡ . ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΎΠ±Ρ ΠΎΠ΄ΡΡ ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, Π·Π°Π³ΡΡΠΆΠ°Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈΠ· ΠΏΠ°ΠΌΡΡΠΈ Π² ΡΠ΅Π³ΠΈΡΡΡΡ, Π²ΡΡΠΈΡΠ»ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π² Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ΅Π³ΠΈΡΡΡΡ, Π° Π·Π°ΡΠ΅ΠΌ ΡΠΎΡ ΡΠ°Π½ΡΡ ΠΎΠΊΠΎΠ½ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π² ΠΏΠ°ΠΌΡΡΡ.
Π ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅ LC-3 Π²ΡΠ΅Π³ΠΎ 10 ΡΠ΅Π³ΠΈΡΡΡΠΎΠ², ΠΊΠ°ΠΆΠ΄ΡΠΉ Π½Π° 16 Π±ΠΈΡ. ΠΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΈΠ· Π½ΠΈΡ βΠΎΠ±ΡΠ΅Π³ΠΎ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ, Π½ΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌ Π½Π°Π·Π½Π°ΡΠ΅Π½Ρ ΡΠΎΠ»ΠΈ.
ΠΠ°ΠΊ ΠΈ ΠΏΠ°ΠΌΡΡΡ, Π±ΡΠ΄Π΅ΠΌ Ρ ΡΠ°Π½ΠΈΡΡ ΡΠ΅Π³ΠΈΡΡΡΡ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅:
ΠΠ°Π±ΠΎΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ
ΠΠ½ΡΡΡΡΠΊΡΠΈΡ β ΡΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π°, ΠΊΠΎΡΠΎΡΠ°Ρ Π³ΠΎΠ²ΠΎΡΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΡ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΊΠ°ΠΊΡΡ-ΡΠΎ ΡΡΠ½Π΄Π°ΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΡΡ Π·Π°Π΄Π°ΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ»ΠΎΠΆΠΈΡΡ Π΄Π²Π° ΡΠΈΡΠ»Π°. Π£ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ Π΅ΡΡΡ ΠΎΠΏΠΊΠΎΠ΄ (ΠΊΠΎΠ΄ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ), ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΠΈΠΉ ΡΠΈΠΏ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ, Π° ΡΠ°ΠΊΠΆΠ΅ Π½Π°Π±ΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ Π²Ρ ΠΎΠ΄Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ.
ΠΠ°ΠΆΠ΄ΡΠΉ ΠΎΠΏΠΊΠΎΠ΄ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΎΠ΄Π½Ρ Π·Π°Π΄Π°ΡΡ, ΠΊΠΎΡΠΎΡΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ Β«Π·Π½Π°Π΅ΡΒ», ΠΊΠ°ΠΊ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ. Π LC-3 Π²ΡΠ΅Π³ΠΎ 16 ΠΎΠΏΠΊΠΎΠ΄ΠΎΠ². ΠΠΎΠΌΠΏΡΡΡΠ΅Ρ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΡΠΈΡΠ»ΠΈΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΡΠΈΡ ΠΏΡΠΎΡΡΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ. ΠΠ»ΠΈΠ½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ 16 Π±ΠΈΡ, Π° Π»Π΅Π²ΡΠ΅ 4 Π±ΠΈΡΠ° Ρ ΡΠ°Π½ΡΡ ΠΊΠΎΠ΄ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ. ΠΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ².
ΠΠΎΠ·ΠΆΠ΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎΠ±ΡΡΠ΄ΠΈΠΌ, ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ ΠΊΠ°ΠΆΠ΄Π°Ρ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ. ΠΠ° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΎΠΏΠΊΠΎΠ΄Ρ. Π£Π΄ΠΎΡΡΠΎΠ²Π΅ΡΡΡΠ΅ΡΡ, ΡΡΠΎ ΡΠΎΡ ΡΠ°Π½ΡΡΡ ΡΠ°ΠΊΠΎΠΉ ΠΏΠΎΡΡΠ΄ΠΎΠΊ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ enum:
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: Π² Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ΅ Intel x86 ΡΠΎΡΠ½ΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ, Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ Π² Π΄ΡΡΠ³ΠΈΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°Ρ , ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ ARM ΠΈ LC-3, ΠΎΡΠ΅Π½Ρ ΠΌΠ°Π»ΠΎ. ΠΠ΅Π±ΠΎΠ»ΡΡΠΈΠ΅ Π½Π°Π±ΠΎΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ Π½Π°Π·ΡΠ²Π°ΡΡΡΡ RISC, Π° Π±ΠΎΠ»Π΅Π΅ ΠΊΡΡΠΏΠ½ΡΠ΅ β CISC. ΠΠΎΠ»ΡΡΠΈΠ΅ Π½Π°Π±ΠΎΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, Π½Π΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΏΡΠΈΠ½ΡΠΈΠΏΠΈΠ°Π»ΡΠ½ΠΎ Π½ΠΎΠ²ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ, Π½ΠΎ ΡΠ°ΡΡΠΎ ΡΠΏΡΠΎΡΠ°ΡΡ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°. ΠΠ΄Π½Π° ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ CISC ΠΌΠΎΠΆΠ΅Ρ Π·Π°ΠΌΠ΅Π½ΠΈΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ RISC. ΠΠ΄Π½Π°ΠΊΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΡ CISC Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½Ρ ΠΈ Π΄ΠΎΡΠΎΠ³ΠΈ Π² ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π΅. ΠΡΠΎ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠΏΡΠΎΠΌΠΈΡΡΡ Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π½Π°Π·Π²Π°ΡΡ Β«ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉΒ» Π΄ΠΈΠ·Π°ΠΉΠ½.
Π€Π»Π°Π³ΠΈ ΡΡΠ»ΠΎΠ²ΠΈΠΉ
Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠ»Π°Π³ΠΎΠ² ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Π΄Π»Ρ ΡΠΈΠ³Π½Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠΈΡΡΠ°ΡΠΈΡΡ . LC-3 ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΈ ΡΠ»Π°Π³Π° ΡΡΠ»ΠΎΠ²ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ Π·Π½Π°ΠΊ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ.
ΠΡ Π·Π°ΠΊΠΎΠ½ΡΠΈΠ»ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΡ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² Π½Π°ΡΠ΅ΠΉ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ! ΠΠΎΡΠ»Π΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΉ (ΡΠΌ. ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅ Π²ΡΡΠ΅) Π²Π°Ρ ΡΠ°ΠΉΠ» Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΠΊ:
ΠΠ΄Π΅ΡΡ ΡΠΊΠ°Π·Π°Π½Ρ ΡΡΡΠ»ΠΊΠΈ Π½Π° ΠΏΡΠΎΠ½ΡΠΌΠ΅ΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠ°Π·Π΄Π΅Π»Ρ ΡΡΠ°ΡΡΠΈ, ΠΎΡΠΊΡΠ΄Π° Π±Π΅ΡΡΡΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΡ ΠΊΠΎΠ΄Π°. ΠΠΎΠ»Π½ΡΠΉ Π»ΠΈΡΡΠΈΠ½Π³ ΡΠΌ. Π² ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ β ΠΏΡΠΈΠΌ. ΠΏΠ΅Ρ.
4. ΠΡΠΈΠΌΠ΅ΡΡ Π½Π° Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅
Π’Π΅ΠΏΠ΅ΡΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π° Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅ LC-3, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅, ΡΡΠΎ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π°. ΠΠ°ΠΌ Π½Π΅ Π½ΡΠΆΠ½ΠΎ Π·Π½Π°ΡΡ, ΠΊΠ°ΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°ΡΡ Π½Π° Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅, ΠΈΠ»ΠΈ Π²ΡΡ ΡΡΡ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ. ΠΡΠΎΡΡΠΎ ΠΏΠΎΡΡΠ°ΡΠ°ΠΉΡΠ΅ΡΡ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΎΠ±ΡΠ΅Π΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅, ΡΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ. ΠΠΎΡ ΠΏΡΠΎΡΡΠΎΠΉ Β«Hello WorldΒ»:
ΠΠ°ΠΊ ΠΈ Π² C, ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ ΡΠ²Π΅ΡΡ Ρ Π²Π½ΠΈΠ·. ΠΠΎ Π² ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ C, Π·Π΄Π΅ΡΡ Π½Π΅Ρ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΡ ΠΎΠ±Π»Π°ΡΡΠ΅ΠΉ <> ΠΈΠ»ΠΈ ΡΠΏΡΠ°Π²Π»ΡΡΡΠΈΡ ΡΡΡΡΠΊΡΡΡ, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ if ΠΈΠ»ΠΈ while ; ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΏΠΈΡΠΎΠΊ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ². ΠΠΎΡΡΠΎΠΌΡ Π΅Π³ΠΎ Π³ΠΎΡΠ°Π·Π΄ΠΎ Π»Π΅Π³ΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ.
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΠΈΠΌΠ΅Π½Π° Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡ ΠΎΠΏΠΊΠΎΠ΄Π°ΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΠ»ΠΈ ΡΠ°Π½Π΅Π΅. ΠΡ Π·Π½Π°Π΅ΠΌ, ΡΡΠΎ Π² ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡΡ ΠΏΠΎ 16 Π±ΠΈΡ, Π½ΠΎ ΠΊΠ°ΠΆΠ΄Π°Ρ ΡΡΡΠΎΠΊΠ° Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΊΠ°ΠΊ Π±ΡΠ΄ΡΠΎ Ρ ΡΠ°Π·Π½ΡΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ². ΠΠ°ΠΊ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊΠΎΠ΅ Π½Π΅ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅?
ΠΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΊΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΡ ΡΠΈΡΠ°Π΅ΠΌ, Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅ β Π² ΡΠ΄ΠΎΠ±ΠΎΡΠΈΡΠ°Π΅ΠΌΠΎΠΉ ΠΈ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΠΉ Π΄Π»Ρ Π·Π°ΠΏΠΈΡΠΈ ΡΠΎΡΠΌΠ΅ ΠΎΠ±ΡΡΠ½ΡΠΌ ΡΠ΅ΠΊΡΡΠΎΠΌ. ΠΠ½ΡΡΡΡΠΌΠ΅Π½Ρ, Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠΉ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠΎΠΌ, ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅Ρ ΠΊΠ°ΠΆΠ΄ΡΡ ΡΡΡΠΎΠΊΡ ΡΠ΅ΠΊΡΡΠ° Π² 16-ΡΠ°Π·ΡΡΠ΄Π½ΡΡ Π΄Π²ΠΎΠΈΡΠ½ΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ, ΠΏΠΎΠ½ΡΡΠ½ΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Π΅. ΠΡΠ° Π΄Π²ΠΎΠΈΡΠ½Π°Ρ ΡΠΎΡΠΌΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎ ΡΡΡΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΌΠ°ΡΡΠΈΠ² 16-ΡΠ°Π·ΡΡΠ΄Π½ΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ, Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΌΠ°ΡΠΈΠ½Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ ΠΈ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½ΠΎΠΉ.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: Ρ ΠΎΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΠΈ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅Ρ ΠΈΠ³ΡΠ°ΡΡ ΡΡ ΠΎΠΆΡΡ ΡΠΎΠ»Ρ Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅, ΠΎΠ½ΠΈ Π½Π΅ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ. ΠΡΡΠ΅ΠΌΠ±Π»Π΅Ρ ΠΏΡΠΎΡΡΠΎ ΠΊΠΎΠ΄ΠΈΡΡΠ΅Ρ ΡΠΎ, ΡΡΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ Π½Π°ΠΏΠΈΡΠ°Π» Π² ΡΠ΅ΠΊΡΡΠ΅, Π·Π°ΠΌΠ΅Π½ΡΡ ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΠΈΡ Π΄Π²ΠΎΠΈΡΠ½ΡΠΌ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΈ ΡΠΏΠ°ΠΊΠΎΠ²ΡΠ²Π°Ρ ΠΈΡ Π² ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ.
Π¦ΠΈΠΊΠ»Ρ ΠΈ ΡΡΠ»ΠΎΠ²ΠΈΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ goto-ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠΉ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ. ΠΠΎΡ Π΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΡΠΈΡΠ°Π΅Ρ Π΄ΠΎ 10.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π° Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΡΡΠΈΡΡΡΡ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΡ. ΠΠΎ Π΅ΡΠ»ΠΈ Π²Π°ΠΌ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΈ ΡΠΎΠ±ΡΠ°ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ LC-3 Ρ ΠΏΠΎΠΌΠΎΡΡΡ LC-3 Tools.
5. ΠΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ
ΠΡΡ ΡΠ°Π·, ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΏΡΠΎΡΡΠΎ Π΄Π°ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅, ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ VM. ΠΠ»Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ VM Π²Π°ΠΌ Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠ»Π½ΠΎΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ°. ΠΠΎΠΊΠ° Π²Ρ ΡΠ»Π΅Π΄ΡΠ΅ΡΠ΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΉ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ΅ ΡΡΠ΅Π½ΠΈΡ ΠΈ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ, Π»ΡΠ±Π°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° LC-3 Π±ΡΠ΄Π΅Ρ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ, Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ Π΅Ρ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΠΈ. Π ΡΠ΅ΠΎΡΠΈΠΈ, VM ΠΌΠΎΠΆΠ΅Ρ Π·Π°ΠΏΡΡΡΠΈΡΡ Π΄Π°ΠΆΠ΅ Π±ΡΠ°ΡΠ·Π΅Ρ ΠΈΠ»ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ, ΠΊΠ°ΠΊ Linux!
ΠΡΠ»ΠΈ Π³Π»ΡΠ±ΠΎΠΊΠΎ Π·Π°Π΄ΡΠΌΠ°ΡΡΡΡ, ΡΠΎ ΡΡΠΎ ΡΠΈΠ»ΠΎΡΠΎΡΡΠΊΠΈ Π·Π°ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½Π°Ρ ΠΈΠ΄Π΅Ρ. Π‘Π°ΠΌΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΌΠΎΠ³ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡ ΡΠΊΠΎΠ»Ρ ΡΠ³ΠΎΠ΄Π½ΠΎ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΎΠΆΠΈΠ΄Π°Π»ΠΈ ΠΈ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π½Π΅ ΡΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ½ΡΡΡ. ΠΠΎ Π² ΡΠΎ ΠΆΠ΅ Π²ΡΠ΅ΠΌΡ Π²ΡΡ ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ ΠΏΡΠΎΡΡΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΡ Π½Π°ΠΏΠΈΡΠ΅ΠΌ! ΠΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Π·Π½Π°Π΅ΠΌ Π²ΡΡ ΠΈ Π½ΠΈΡΠ΅Π³ΠΎ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΊΠ°ΠΆΠ΄Π°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°. Π’ΡΡΡΠΈΠ½Π³ ΡΠΏΠΎΠΌΠΈΠ½Π°Π» ΡΡΡ ΡΡΠ΄Π΅ΡΠ½ΡΡ ΠΈΠ΄Π΅Ρ:
Β«ΠΠ½Π΅Π½ΠΈΠ΅ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ ΠΌΠ°ΡΠΈΠ½Ρ Π½Π΅ ΠΌΠΎΠ³ΡΡ ΡΠ΅ΠΌ-Π»ΠΈΠ±ΠΎ ΡΠ΄ΠΈΠ²ΠΈΡΡ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠ°, ΠΎΡΠ½ΠΎΠ²ΡΠ²Π°Π΅ΡΡΡ, ΠΊΠ°ΠΊ Ρ ΠΏΠΎΠ»Π°Π³Π°Ρ, Π½Π° ΠΎΠ΄Π½ΠΎΠΌ Π·Π°Π±Π»ΡΠΆΠ΄Π΅Π½ΠΈΠΈ, ΠΊΠΎΡΠΎΡΠΎΠΌΡ Π² ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΠΏΠΎΠ΄Π²Π΅ΡΠΆΠ΅Π½Ρ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΠΊΠΈ ΠΈ ΡΠΈΠ»ΠΎΡΠΎΡΡ. Π― ΠΈΠΌΠ΅Ρ Π² Π²ΠΈΠ΄Ρ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ ΠΊΠΎΠ»Ρ ΡΠΊΠΎΡΠΎ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΡΠ°ΠΊΡ ΡΡΠ°Π» Π΄ΠΎΡΡΠΎΡΠ½ΠΈΠ΅ΠΌ ΡΠ°Π·ΡΠΌΠ°, ΡΠΎΡΡΠ°Ρ ΠΆΠ΅ Π΄ΠΎΡΡΠΎΡΠ½ΠΈΠ΅ΠΌ ΡΠ°Π·ΡΠΌΠ° ΡΡΠ°Π½ΠΎΠ²ΡΡΡΡ Π²ΡΠ΅ ΡΠ»Π΅Π΄ΡΡΠ²ΠΈΡ ΠΈΠ· ΡΡΠΎΠ³ΠΎ ΡΠ°ΠΊΡΠ°Β». β ΠΠ»Π°Π½ Π. Π’ΡΡΡΠΈΠ½Π³
ΠΡΠΎΡΠ΅Π΄ΡΡΠ°
ΠΠΎΡ ΡΠΎΡΠ½ΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ, ΠΊΠΎΡΠΎΡΡΡ Π½ΡΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ:
ΠΠ°ΡΠ½ΡΠΌ ΠΈΠ·ΡΡΠ΅Π½ΠΈΠ΅ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ³ΠΎ ΡΠΈΠΊΠ»Π°:
6. Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ
Π’Π΅ΠΏΠ΅ΡΡ Π²Π°ΡΠ° Π·Π°Π΄Π°ΡΠ° β ΡΠ΄Π΅Π»Π°ΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΎΠΏΠΊΠΎΠ΄Π°. ΠΠΎΠ΄ΡΠΎΠ±Π½Π°Ρ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΠ· ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π½ΡΠΆΠ½ΠΎ ΡΠ·Π½Π°ΡΡ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΊΠ°ΠΆΠ΄Π°Ρ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ, ΠΈ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ. ΠΡΠΎ ΠΏΡΠΎΡΠ΅, ΡΠ΅ΠΌ ΠΊΠ°ΠΆΠ΅ΡΡΡ. ΠΠ΄Π΅ΡΡ Ρ ΠΏΡΠΎΠ΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΡ, ΠΊΠ°ΠΊ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ Π΄Π²Π΅ ΠΈΠ· Π½ΠΈΡ . ΠΠΎΠ΄ Π΄Π»Ρ ΠΎΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π² ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅.
ΠΠ½ΡΡΡΡΠΊΡΠΈΡ ADD Π±Π΅ΡΡΡ Π΄Π²Π° ΡΠΈΡΠ»Π°, ΡΠΊΠ»Π°Π΄ΡΠ²Π°Π΅Ρ ΠΈΡ ΠΈ ΡΠΎΡ ΡΠ°Π½ΡΠ΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π² ΡΠ΅Π³ΠΈΡΡΡΠ΅. Π‘ΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π½Π° ΡΡΡ. 526. ΠΠ°ΠΆΠ΄Π°Ρ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ ADD Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΌΡ Π·Π½Π°Π΅ΠΌ, Π³Π΄Π΅ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ, ΠΈ Π·Π½Π°Π΅ΠΌ ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π΄Π»Ρ ΡΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΡΡΠ°Π»ΠΎΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ·Π½Π°ΡΡ Π²ΡΠΎΡΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π΄Π»Ρ ΡΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠ΄Π΅ΡΡ Π΄Π²Π΅ ΡΡΡΠΎΠΊΠΈ Π½Π°ΡΠΈΠ½Π°ΡΡ ΡΠ°Π·Π»ΠΈΡΠ°ΡΡΡΡ. ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Π²Π²Π΅ΡΡ Ρ 5-ΠΉ Π±ΠΈΡ ΡΠ°Π²Π΅Π½ 0, Π° Π²Π½ΠΈΠ·Ρ β 1. ΠΡΠΎΡ Π±ΠΈΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΠΈΠ»ΠΈ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎΠΌΡ ΡΠ΅ΠΆΠΈΠΌΡ, ΠΈΠ»ΠΈ ΡΠ΅Π³ΠΈΡΡΡΠΎΠ²ΠΎΠΌΡ ΡΠ΅ΠΆΠΈΠΌΡ. Π ΡΠ΅Π³ΠΈΡΡΡΠΎΠ²ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅ Π²ΡΠΎΡΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Ρ ΡΠ°Π½ΠΈΡΡΡ Π² ΡΠ΅Π³ΠΈΡΡΡΠ΅, ΠΊΠ°ΠΊ ΠΈ ΠΏΠ΅ΡΠ²ΠΎΠ΅. ΠΠ½ΠΎ ΠΎΡΠΌΠ΅ΡΠ΅Π½ΠΎ ΠΊΠ°ΠΊ SR2 ΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ Π² Π±ΠΈΡΠ°Ρ ΡΠΎ Π²ΡΠΎΡΠΎΠ³ΠΎ ΠΏΠΎ Π½ΡΠ»Π΅Π²ΠΎΠΉ. ΠΠΈΡΡ 3 ΠΈ 4 Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ. ΠΠ° Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅ ΡΡΠΎ Π±ΡΠ΄Π΅Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ ΡΠ°ΠΊ:
Π Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅ Π²ΠΌΠ΅ΡΡΠΎ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΡΠ΅Π³ΠΈΡΡΡΠ° Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π²Π½Π΅Π΄ΡΡΠ΅ΡΡΡ Π² ΡΠ°ΠΌΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ. ΠΡΠΎ ΡΠ΄ΠΎΠ±Π½ΠΎ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ Π½Π΅ Π½ΡΠΆΠ½Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ Π΄Π»Ρ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΡΡΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° Π² ΡΠ΅Π³ΠΈΡΡΡ ΠΈΠ· ΠΏΠ°ΠΌΡΡΠΈ. ΠΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ ΠΎΠ½ΠΎ ΡΠΆΠ΅ Π²Π½ΡΡΡΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ. ΠΠΎΠΌΠΏΡΠΎΠΌΠΈΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΡΠ°ΠΌ ΠΌΠΎΠ³ΡΡ Ρ ΡΠ°Π½ΠΈΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΠ΅ ΡΠΈΡΠ»Π°. ΠΡΠ»ΠΈ Π±ΡΡΡ ΡΠΎΡΠ½ΡΠΌ, ΠΌΠ°ΠΊΡΠΈΠΌΡΠΌ 2 5 =32. ΠΡΠΎ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π΄Π»Ρ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΡ ΡΡΡΡΡΠΈΠΊΠΎΠ² ΠΈΠ»ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ. ΠΠ° Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠ°ΠΊ:
ΠΠΎΡ Π²ΡΠ΄Π΅ΡΠΆΠΊΠ° ΠΈΠ· ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ:
ΠΡΠ»ΠΈ Π±ΠΈΡ [5] ΡΠ°Π²Π΅Π½ 0, ΡΠΎ Π²ΡΠΎΡΠΎΠΉ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΎΠΏΠ΅ΡΠ°Π½Π΄ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΠΈΠ· SR2. ΠΡΠ»ΠΈ Π±ΠΈΡ [5] ΡΠ°Π²Π΅Π½ 1, ΡΠΎ Π²ΡΠΎΡΠΎΠΉ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΎΠΏΠ΅ΡΠ°Π½Π΄ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΠΏΡΡΡΠΌ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ imm5 Π΄ΠΎ 16 Π±ΠΈΡ. Π ΠΎΠ±ΠΎΠΈΡ ΡΠ»ΡΡΠ°ΡΡ Π²ΡΠΎΡΠΎΠΉ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΎΠΏΠ΅ΡΠ°Π½Π΄ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΡΡ ΠΊ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠΌΡ SR1, Π° ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΡΡΡ Π² DR. (ΡΡΡ. 526)
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: Π΅ΡΠ»ΠΈ Π²Π°Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΡΡ Π΄Π²ΠΎΠΈΡΠ½ΡΠ΅ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΈΡΠ»Π°, ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ ΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΌ ΠΊΠΎΠ΄Π΅. ΠΠΎ ΡΡΠΎ Π½Π΅ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ. ΠΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠΎΠ΄ Π²ΡΡΠ΅ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ, ΠΊΠΎΠ³Π΄Π° ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π³ΠΎΠ²ΠΎΡΠΈΡ ΡΠ°ΡΡΠΈΡΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅.
Π ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π΅ΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅:
ΠΠΎΠ΄Ρ ΡΡΠ»ΠΎΠ²ΠΈΠΉ Π·Π°Π΄Π°ΡΡΡΡ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠΎΠ³ΠΎ, ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΈ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΌ, Π½ΡΠ»Π΅Π²ΡΠΌ ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΠΌ. (ΡΡΡ. 526)
Π Π°Π½Π΅Π΅ ΠΌΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΠ»ΠΈ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ flags enum, Π° ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΡΠΈΡΠ»ΠΎ Π²ΡΠ΅ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΈΡ ΡΠ»Π°Π³ΠΈ. ΠΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π·, ΠΊΠΎΠ³Π΄Π° Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅ΡΡΡ Π² ΡΠ΅Π³ΠΈΡΡΡ, Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΡΠ»Π°Π³ΠΈ, ΡΡΠΎΠ±Ρ ΡΠΊΠ°Π·Π°ΡΡ Π΅Π³ΠΎ Π·Π½Π°ΠΊ. ΠΠ°ΠΏΠΈΡΠ΅ΠΌ ΡΡΠ½ΠΊΡΠΈΡ Π΄Π»Ρ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ:
Π’Π΅ΠΏΠ΅ΡΡ ΠΌΡ Π³ΠΎΡΠΎΠ²Ρ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΊΠΎΠ΄ Π΄Π»Ρ ADD :
Π ΡΡΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΠΎΠ΄Π²Π΅Π΄ΡΠΌ ΠΈΡΠΎΠ³ΠΈ.
LDI ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ Β«ΠΊΠΎΡΠ²Π΅Π½Π½ΡΡΒ» ΠΈΠ»ΠΈ Β«Π½Π΅ΠΏΡΡΠΌΡΡΒ» Π·Π°Π³ΡΡΠ·ΠΊΡ (load indirect). ΠΡΠ° ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ Π·Π°Π³ΡΡΠ·ΠΊΠΈ Π² ΡΠ΅Π³ΠΈΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈΠ· ΠΌΠ΅ΡΡΠ° Π² ΠΏΠ°ΠΌΡΡΠΈ. Π‘ΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π½Π° ΡΡΡ. 532.
ΠΠΎΡ ΠΊΠ°ΠΊ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ Π΄Π²ΠΎΠΈΡΠ½Π°Ρ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠ°:
ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΡΡΡ ΠΎΠΊΠΎΠ»ΡΠ½ΡΠΌ ΠΏΡΡΡΠΌ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ ΠΈΠ· ΠΏΠ°ΠΌΡΡΠΈ, Π½ΠΎ ΡΠ°ΠΊ Π½ΡΠΆΠ½ΠΎ. ΠΠ½ΡΡΡΡΠΊΡΠΈΡ LD ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π° Π°Π΄ΡΠ΅ΡΠ½ΡΠΌ ΡΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ 9 Π±ΠΈΡ, ΡΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ ΠΏΠ°ΠΌΡΡΡ ΡΡΠ΅Π±ΡΠ΅Ρ Π΄Π»Ρ Π°Π΄ΡΠ΅ΡΠ° 16 Π±ΠΈΡ. LDI ΠΏΠΎΠ»Π΅Π·Π½Π° Π΄Π»Ρ Π·Π°Π³ΡΡΠ·ΠΊΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Ρ ΡΠ°Π½ΡΡΡΡ Π³Π΄Π΅-ΡΠΎ Π·Π° ΠΏΡΠ΅Π΄Π΅Π»Π°ΠΌΠΈ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ°, Π½ΠΎ Π΄Π»Ρ ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π°Π΄ΡΠ΅Ρ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ Ρ ΡΠ°Π½ΠΈΡΡΡΡ ΡΡΠ΄ΠΎΠΌ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΡΠΌΠ°ΡΡ ΠΎ Π½Π΅ΠΉ ΠΊΠ°ΠΊ ΠΎ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π² C, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΌ Π½Π° Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π΄Π°Π½Π½ΡΠ΅:
ΠΠ°ΠΊ ΠΈ ΡΠ°Π½ΡΡΠ΅, ΠΏΠΎΡΠ»Π΅ Π·Π°ΠΏΠΈΡΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π² DR ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΡΠ»Π°Π³ΠΈ:
ΠΠΎΠ΄Ρ ΡΡΠ»ΠΎΠ²ΠΈΠΉ Π·Π°Π΄Π°ΡΡΡΡ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠΎΠ³ΠΎ, ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΈ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΌ, Π½ΡΠ»Π΅Π²ΡΠΌ ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΠΌ. (ΡΡΡ. 532)
ΠΠΎΡ ΠΊΠΎΠ΄ Π΄Π»Ρ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΠ»ΡΡΠ°Ρ: ( mem_read ΠΎΠ±ΡΡΠ΄ΠΈΠΌ Π² ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅):
7. Π¨ΠΏΠ°ΡΠ³Π°Π»ΠΊΠ° ΠΏΠΎ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡΠΌ
Π ΡΡΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ β ΠΏΠΎΠ»Π½ΡΠ΅ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΎΡΡΠ°Π²ΡΠΈΡ ΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ, Π΅ΡΠ»ΠΈ Π²Ρ Π·Π°ΡΡΡΡΠ»ΠΈ.