ΠΡΠ±ΠΎΠ΅ ΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΡΡΠΎΡΡΡ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ ΡΠΎΡΠΊΠΎΠΉ (flat assembler Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ ΡΠΎΡΠΊΠΎΠΉ) Π² Π½Π°ΡΡΠ½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ. ΠΠ»Ρ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π½ΠΈΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠΌ, ΡΡΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ Π² ΠΊΠΎΠ½ΡΠ΅ Π±ΡΠΊΠ²Ρ Β«fΒ», Π»ΠΈΠ±ΠΎ Π²ΠΊΠ»ΡΡΠ°ΡΡ Π² ΡΠ΅Π±Ρ ΠΏΠΎ ΠΊΡΠ°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ ΡΠΈΠΌΠ²ΠΎΠ» ".Β» ΠΈΠ»ΠΈ Β«EΒ». Π’Π°ΠΊ, Β«1.0Β», Β«1E0Β» ΠΈ Β«1fΒ» ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ ΠΎΠ΄Π½ΠΎ ΠΈ ΡΠΎ ΠΆΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ ΡΠΎΡΠΊΠΎΠΉ, ΠΊΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ ΠΏΡΠΎΡΡΠΎ Β«1Β» ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅.
1.2.5 ΠΠ΅ΡΠ΅Ρ ΠΎΠ΄Ρ ΠΈ Π²ΡΠ·ΠΎΠ²Ρ
ΠΠΏΠ΅ΡΠ°Π½Π΄ Π»ΡΠ±ΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π° ΠΈΠ»ΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ Π²ΡΠ·ΠΎΠ²Π° ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠ΅Π΄Π²Π°ΡΡΡΡΡΡ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ°ΠΌΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠ°, Π½ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ², ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΠΈΡ ΡΠΈΠΏ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π°: Β«nearΒ» ΠΈΠ»ΠΈ Β«farΒ». ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅Ρ Π² 16-Π±ΠΈΡΠ½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅, ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ Β«jmp dword [0]Β» ΡΡΠ°Π½Π΅Ρ Π΄Π°Π»Π΅ΠΊΠΈΠΌ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΎΠΌ, Π° Π΅ΡΠ»ΠΈ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅Ρ Π² 32-Π±ΠΈΡΠ½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅, ΠΎΠ½Π° ΡΡΠ°Π½Π΅Ρ Π±Π»ΠΈΠ·ΠΊΠΈΠΌ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΎΠΌ. Π§ΡΠΎΠ±Ρ Π·Π°ΡΡΠ°Π²ΠΈΡΡ ΡΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ ΠΏΠΎ-ΡΠ°Π·Π½ΠΎΠΌΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠΎΡΠΌΡ Β«jmp near dword [0]Β» ΠΈΠ»ΠΈ Β«jmp far dword [0]Β».
ΠΡΠ»ΠΈ ΠΎΠΏΠ΅ΡΠ°Π½Π΄ Π±Π»ΠΈΠ·ΠΊΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π° ΡΡΠΎ Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, Π°ΡΡΠ΅ΠΌΠ±Π»Π΅Ρ, Π΅ΡΠ»ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΡΠ³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ ΠΊΡΠ°ΡΡΠ°ΠΉΡΠΈΠΉ Π²Π°ΡΠΈΠ°Π½Ρ ΡΡΠΎΠΉ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π° (Π½ΠΎ Π½Π΅ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ 32-Π±ΠΈΡΠ½ΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ Π² 16-Π±ΠΈΡΠ½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅ ΠΈΠ»ΠΈ 16-Π±ΠΈΡΠ½ΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ Π² 32-Π±ΠΈΡΠ½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅, Π΅ΡΠ»ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΡΠΎΡΠ½ΠΎ Π΅Ρ Π½Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡ). ΠΠ°Π΄Π°Π½ΠΈΠ΅ΠΌ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° ΡΠ°Π·ΠΌΠ΅ΡΠ° Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°ΡΡΠ°Π²ΠΈΡΡ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅Ρ Π²ΡΠ΅Π³Π΄Π° Π³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ Π΄Π»ΠΈΠ½Π½ΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Β«jmp word 0Β» Π² 16-Π±ΠΈΡΠ½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅ ΠΈΠ»ΠΈ Β«jmp dword 0Β» Π² 32-Π±ΠΈΡΠ½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅) ΠΈΠ»ΠΈ Π²ΡΠ΅Π³Π΄Π° ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΊΠΎΡΠΎΡΠΊΠΈΠΉ Π²Π°ΡΠΈΠ°Π½Ρ ΠΈ Π·Π°Π²Π΅ΡΡΠ°ΡΡΡΡ Ρ ΠΎΡΠΈΠ±ΠΊΠΎΠΉ, ΠΊΠΎΠ³Π΄Π° ΡΡΠΎ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Β«jmp byte 0Β»).
1.2.6 Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠ°
ΠΡΠ»ΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ Π°Π΄ΡΠ΅ΡΠ°ΡΠΈΡ Π² ΠΏΠ°ΠΌΡΡΠΈ, ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π±ΡΠ΄Π΅Ρ Π³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡΡΡ ΠΊΡΠ°ΡΡΠ°ΠΉΡΠ°Ρ 8-Π±ΠΈΡΠ½Π°Ρ ΡΠΎΡΠΌΠ°, Π΅ΡΠ»ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π°Π΄ΡΠ΅ΡΠ° ΠΏΠΎΠΏΠ°Π΄Π°Π΅Ρ Π² Π½ΡΠΆΠ½ΡΠΉ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½, Π½ΠΎ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² Β«wordΒ» ΠΈ Β«dwordΒ» ΠΏΠ΅ΡΠ΅Π΄ Π°Π΄ΡΠ΅ΡΠΎΠΌ Π² ΠΊΠ²Π°Π΄ΡΠ°ΡΠ½ΡΡ ΡΠΊΠΎΠ±ΠΊΠ°Ρ (ΠΈΠ»ΠΈ ΠΏΠΎΡΠ»Π΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° Β«ptrΒ»). Π’Π°ΠΊΠΎΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° ΡΠ°Π·ΠΌΠ΅ΡΠ° ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΎ Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠ° Π°Π΄ΡΠ΅ΡΠ°, ΠΎΡΠ»ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΎΡ ΡΠ°Π·ΠΌΠ΅ΡΠ°, ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ.
ΠΠ½ΡΡΡΡΠΊΡΠΈΠΈ Β«adcΒ», Β«addΒ», Β«andΒ», Β«cmpΒ», Β«orΒ», Β«sbbΒ», Β«subΒ» ΠΈ Β«xorΒ» Ρ ΠΏΠ΅ΡΠ²ΡΠΌ 16-ΡΠΈ ΠΈΠ»ΠΈ 32-Π±ΠΈΡΠ½ΡΠΌ ΠΎΠΏΠ΅ΡΠ°Π½Π΄ΠΎΠΌ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π³Π΅Π½Π΅ΡΠΈΡΡΡΡΡΡ Π² ΡΠΊΠΎΡΠΎΡΠ΅Π½Π½ΠΎΠΉ 8-Π±ΠΈΡΠ½ΠΎΠΉ ΡΠΎΡΠΌΠ΅, Π΅ΡΠ»ΠΈ Π²ΡΠΎΡΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°Π½Π΄ β ΡΡΠΎ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠΌΠΎΠ΅ Π΄Π»Ρ ΠΏΡΠ΅Π΄ΠΏΠΈΡΠ°Π½Π½ΡΡ 8-Π±ΠΈΡΠ½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ. ΠΠ½Π° ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ°ΠΌΠΈ Β«wordΒ» ΠΈ Β«dwordΒ» ΠΏΠ΅ΡΠ΅Π΄ ΡΠ°ΠΊΠΈΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ. Π‘Ρ ΠΎΠ΄Π½ΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π° ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠΌΡ ΠΊ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ Β«imulΒ» Ρ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΡΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΠΎΠΏΠ΅ΡΠ°Π½Π΄Π°.
ΠΠ΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊ ΠΎΠΏΠ΅ΡΠ°Π½Π΄ Π΄Π»Ρ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ Β«pushΒ» Π±Π΅Π· ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° ΡΠ°Π·ΠΌΠ΅ΡΠ°, ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΡΡΡ ΠΊΠ°ΠΊ ΡΠ»ΠΎΠ²ΠΎ, Π΅ΡΠ»ΠΈ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅Ρ 16-Π±ΠΈΡΠ½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅, ΠΈ ΠΊΠ°ΠΊ Π΄Π²ΠΎΠΉΠ½ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ, Π΅ΡΠ»ΠΈ FASM Π² 32-Π±ΠΈΡΠ½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅. ΠΠΎΡΠΎΡΠΊΠ°Ρ 8-Π±ΠΈΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠ° Β«wordΒ» ΠΈ Β«dwordΒ» ΠΌΠΎΠ³ΡΡ Π·Π°ΡΡΠ°Π²ΠΈΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ Β«pushΒ» Π±ΡΡΡ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π² Π±ΠΎΠ»Π΅Π΅ Π΄Π»ΠΈΠ½Π½ΠΎΠΉ ΡΠΎΡΠΌΠ΅. ΠΠ½Π΅ΠΌΠΎΠ½ΠΈΠΊΠΈ Β«pushwΒ» ΠΈ Β«pushdΒ» ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΡ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ 16-Π±ΠΈΡΠ½ΡΠΉ ΠΈΠ»ΠΈ 32-Π±ΠΈΡΠ½ΡΠΉ ΠΊΠΎΠ΄ Π±Π΅Π· ΠΏΡΠΈΠ½ΡΠΆΠ΄Π΅Π½ΠΈΡ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»ΠΈΠ½Π½ΡΡ ΡΠΎΡΠΌΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ.
ΠΠ»Π°Π²Π° 2. ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ
ΠΡΠ° Π³Π»Π°Π²Π° ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π΄Π΅ΡΠ°Π»ΡΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΠ± ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡΡ ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π°Ρ , ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΡ FASMΠΎΠΌ. ΠΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΡΠ°Π½Ρ ΠΈ ΠΌΠ΅ΡΠΎΠΊ ΡΠΆΠ΅ ΠΎΠΏΠΈΡΠ°Π½Ρ Π² 1.2.3, Π²ΡΠ΅ ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ Π±ΡΠ΄ΡΡ ΠΎΠΏΠΈΡΠ°Π½Ρ Π½ΠΈΠΆΠ΅ Π² ΡΡΠΎΠΉ Π³Π»Π°Π²Π΅.
2.2 ΠΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ
ΠΡΠΎΡ ΠΏΠ°ΡΠ°Π³ΡΠ°Ρ ΠΎΠΏΠΈΡΡΠ²Π°Π΅Ρ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠΌ Π°ΡΡΠ΅ΠΌΠ±Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΡΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π°ΡΡΠ΅ΠΌΠ±Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΌΠΎΠ³ΡΡ Π΄Π΅Π»Π°ΡΡ ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π±Π»ΠΎΠΊΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ Π°ΡΡΠ΅ΠΌΠ±Π»ΠΈΡΠΎΠ²Π°Π»ΠΈΡΡ ΠΏΠΎ-ΡΠ°Π·Π½ΠΎΠΌΡ ΠΈΠ»ΠΈ Π½Π΅ Π°ΡΡΠ΅ΠΌΠ±Π»ΠΈΡΠΎΠ²Π°Π»ΠΈΡΡ Π²ΠΎΠ²ΡΠ΅.
2.2.1 Π£ΡΠ»ΠΎΠ²Π½ΠΎΠ΅ Π°ΡΡΠ΅ΠΌΠ±Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ Β«ifΒ» ΠΌΠΎΠΆΠ½ΠΎ Π°ΡΡΠ΅ΠΌΠ±Π»ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ»ΠΈ Π½Π΅ Π°ΡΡΠ΅ΠΌΠ±Π»ΠΈΡΠΎΠ²Π°ΡΡ Π±Π»ΠΎΠΊ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠ»ΠΎΠ²ΠΈΡ. ΠΠ° Π½Π΅ΠΉ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΠ΅Π΅ ΡΡΠ»ΠΎΠ²ΠΈΠ΅. ΠΠ½ΡΡΡΡΠΊΡΠΈΠΈ Π½Π° ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΡΡΡΠΎΠΊΠ°Ρ Π°ΡΡΠ΅ΠΌΠ±Π»ΠΈΡΡΡΡΡΡ, ΡΠΎΠ»ΡΠΊΠΎ Π΅ΡΠ»ΠΈ ΡΡΠΎ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ, ΠΈΠ½Π°ΡΠ΅ ΠΎΠ½ΠΈ ΠΏΡΠΎΠΏΡΡΠΊΠ°ΡΡΡΡ. ΠΠΏΡΠΈΠΎΠ½Π°Π»ΡΠ½Π°Ρ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π° Β«elseifΒ» ΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ Π·Π° Π½Π΅ΠΉ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΌ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΠΈΠΌ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΠ΅, Π½Π°ΡΠΈΠ½Π°Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ Π±Π»ΠΎΠΊ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠΉ Π°ΡΡΠ΅ΠΌΠ±Π»ΠΈΡΡΠ΅ΡΡΡ, Π΅ΡΠ»ΠΈ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΡ Π½Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ, Π° Π΄Π°Π½Π½ΠΎΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ. ΠΠΏΡΠΈΠΎΠ½Π°Π»ΡΠ½Π°Ρ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π° Β«elseΒ» Π½Π°ΡΠΈΠ½Π°Π΅Ρ Π±Π»ΠΎΠΊ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π°ΡΡΠ΅ΠΌΠ±Π»ΠΈΡΡΡΡΡΡ, Π΅ΡΠ»ΠΈ Π½Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π½ΠΈ ΠΎΠ΄Π½ΠΎ ΠΈΠ· ΡΡΠ»ΠΎΠ²ΠΈΠΉ. Β«end ifΒ» Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Π΅Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ Π±Π»ΠΎΠΊ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ.
ΠΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΠΌΠ½ΠΈΡΡ, ΡΡΠΎ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π° Β«ifΒ» ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΡΡΡ Π½Π° ΡΡΠ°Π΄ΠΈΠΈ Π°ΡΡΠ΅ΠΌΠ±Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΏΠΎΡΡΠΎΠΌΡ Π½Π΅ Π²Π»ΠΈΡΠ΅Ρ Π½Π° Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΡ ΠΊΠΎΠ½ΡΡΠ°Π½Ρ ΠΈ ΠΌΠ°ΠΊΡΠΎΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ β ΠΊΠΎΠ³Π΄Π° Π°ΡΡΠ΅ΠΌΠ±Π»Π΅Ρ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π΅Ρ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ Β«ifΒ», Π²Π΅ΡΡ ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΈΠ½Π³ ΡΠΆΠ΅ Π·Π°ΠΊΠΎΠ½ΡΠ΅Π½.
ΠΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΈ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ². ΠΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ Π²ΡΠ³Π»ΡΠ΄ΡΡ ΡΠ°ΠΊ: Β«~Β» Π΄Π»Ρ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΎΡΡΠΈΡΠ°Π½ΠΈΡ, Β«&Β» Π΄Π»Ρ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π, Β«|Β» Π΄Π»Ρ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΠΠ. ΠΡΡΠΈΡΠ°Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π΅Ρ Π²ΡΡΡΠΈΠΉ ΠΏΡΠΈΠΎΡΠΈΡΠ΅Ρ. ΠΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠΈΡΠ»ΠΎΠ²ΡΠΌ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ, ΠΎΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΡΡΠΈΡΠ°ΡΡΡΡ Π»ΠΎΠΆΠ½ΡΠΌ Π² ΡΠ»ΡΡΠ°Π΅ ΡΠ°Π²Π΅Π½ΡΡΠ²Π° Π½ΡΠ»Ρ, ΠΈΠ½Π°ΡΠ΅ ΠΎΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΈΡΡΠΈΠ½Π½ΡΠΌ. ΠΠ»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠ°Π²Π½ΠΈΡΡ Π΄Π²Π° ΡΠΈΡΠ»ΠΎΠ²ΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ²: Β«=Β» (ΡΠ°Π²Π½ΠΎ), Β«<Β» (ΠΌΠ΅Π½ΡΡΠ΅), Β«>Β» (Π±ΠΎΠ»ΡΡΠ΅), Β«<=Β» (ΠΌΠ΅Π½ΡΡΠ΅ ΠΈΠ»ΠΈ ΡΠ°Π²Π½ΠΎ), Β«>=Β» (Π±ΠΎΠ»ΡΡΠ΅ ΠΈΠ»ΠΈ ΡΠ°Π²Π½ΠΎ), Β«<>Β» (Π½Π΅ ΡΠ°Π²Π½ΠΎ).
Β«usedΒ» ΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ Π·Π° Π½ΠΈΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠΌ ΠΈΠΌΠ΅Π½ΠΈ, ΡΡΠΎ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΡΡ Π»ΠΈ Π³Π΄Π΅-Π½ΠΈΠ±ΡΠ΄Ρ Π΄Π°Π½Π½ΡΠΉ ΡΠΈΠΌΠ²ΠΎΠ» (ΠΎΠ½ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΡΠΈΠΌΠ²ΠΎΠ» ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠ»Π΅ ΡΡΠΎΠΉ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ). ΠΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠΌ Β«definedΒ» ΠΌΠΎΠΆΠ΅Ρ ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ Π»ΡΠ±ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, ΠΎΠ±ΡΡΠ½ΠΎ ΡΡΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΠΎΠ΅ ΠΈΠΌΡ; ΡΡΠΎΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ, ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π»ΠΈ Π΄Π°Π½Π½ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Ρ, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ Π² ΠΊΠΎΠ΄Π΅, ΠΈ Π΄ΠΎΡΡΡΠΏΠ½ΡΠ΅ ΠΈΠ· ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΠΏΠΎΠ·ΠΈΡΠΈΠΈ.
Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ ΠΏΡΠΎΡΡΠΎΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ Β«countΒ» ΠΊΠΎΡΠΎΡΠ°Ρ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π° Π³Π΄Π΅-ΡΠΎ Π² ΠΊΠΎΠ΄Π΅:
if count>0
mov cx,count
rep movsb
end if
ΠΡΠΈ Π΄Π²Π΅ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ Π±ΡΠ΄ΡΡ Π°ΡΡΠ΅ΠΌΠ±Π»ΠΈΡΠΎΠ²Π°Π½Ρ ΡΠΎΠ»ΡΠΊΠΎ Π΅ΡΠ»ΠΈ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ° Β«countΒ» Π±ΠΎΠ»ΡΡΠ΅ Π½ΡΠ»Ρ. Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½ΡΡ ΡΡΠ»ΠΎΠ²Π½ΡΡ ΡΡΡΡΠΊΡΡΡΡ:
if count & ~ count mod 4
mov cx,count/4
rep movsd
else if count>4
mov cx,count/4
rep movsd
mov cx,count mod 4
rep movsb
else
mov cx,count
rep movsb
end if
ΠΠ΅ΡΠ²ΡΠΉ Π±Π»ΠΎΠΊ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ Π°ΡΡΠ΅Π±Π»ΠΈΡΡΠ΅ΡΡΡ, Π΅ΡΠ»ΠΈ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ° Β«countΒ» Π½Π΅ ΡΠ°Π²Π½Π° Π½ΡΠ»Ρ ΠΈ ΠΊΡΠ°ΡΠ½Π° ΡΠ΅ΡΡΡΠ΅ΠΌ, Π΅ΡΠ»ΠΈ ΡΡΠΎ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ Π½Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ, ΠΎΡΠ΅Π½ΠΈΠ²Π°Π΅ΡΡΡ Π²ΡΠΎΡΠΎΠ΅ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΠ΅, ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅ Π·Π° Β«else ifΒ», ΠΈ Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΎ Π²Π΅ΡΠ½ΠΎ, Π°ΡΡΠ΅ΠΌΠ±Π»ΠΈΡΡΠ΅ΡΡΡ Π²ΡΠΎΡΠΎΠΉ Π±Π»ΠΎΠΊ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ, ΠΈΠ½Π°ΡΠ΅ Π°ΡΡΠ΅ΠΌΠ±Π»ΠΈΡΡΠ΅ΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ Π±Π»ΠΎΠΊ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π·Π° ΡΡΡΠΎΠΊΠΎΠΉ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ΅ΠΉ ΡΠΎΠ»ΡΠΊΠΎ Β«elseΒ».
Π’Π°ΠΊΠΆΠ΅ Π΅ΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΡΡΠ°Π²Π½ΠΈΠ²Π°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΡΠΎΠ±ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ². Β«eqΒ» ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ ΡΠ°ΠΊΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π½Π° ΡΠΎΠΆΠ΄Π΅ΡΡΠ²Π΅Π½Π½ΠΎΡΡΡ. ΠΠΏΠ΅ΡΠ°ΡΠΎΡ Β«inΒ» ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ, ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ Π»ΠΈ Π΄Π°Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊ ΡΠΏΠΈΡΠΊΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌΡ Π·Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠΌ. Π‘ΠΏΠΈΡΠΎΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ Π·Π°ΠΊΠ»ΡΡΠ΅Π½ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΈΠΌΠ²ΠΎΠ»Π°ΠΌΠΈ Β«<Β» ΠΈ Β«>Β», Π° Π΅Π³ΠΎ ΡΠ»Π΅Π½Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΡΠ°Π·Π΄Π΅Π»Π΅Π½Ρ Π·Π°ΠΏΡΡΡΠΌΠΈ. Π‘ΠΈΠΌΠ²ΠΎΠ»Ρ ΡΡΠΈΡΠ°ΡΡΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠΌΠΈ, Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ ΠΈΠΌΠ΅ΡΡ ΠΎΠ΄Π½ΠΎ ΠΈ ΡΠΎ ΠΆΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° β Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Β«pwordΒ» ΠΈ Β«fwordΒ» Π΄Π»Ρ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ° ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ ΠΏΠΎΡΡΠΎΠΌΡ Π½Π΅ ΡΠ°Π·Π»ΠΈΡΠ°ΡΡΡΡ Π²ΡΡΠ΅ΡΠΊΠ°Π·Π°Π½Π½ΡΠΌΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ°ΠΌΠΈ. Π’Π°ΠΊ ΠΆΠ΅ Β«16 eq 10hΒ» ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΈΡΡΠΈΠ½ΠΎΠΉ, ΠΎΠ΄Π½Π°ΠΊΠΎ Β«16 eq 10+4Β» Π½Π΅Ρ.
ΠΠΏΠ΅ΡΠ°ΡΠΎΡ Β«eqtypeΒ» ΠΈΠΌΠ΅ΡΡ Π»ΠΈ ΡΡΠ°Π²Π½ΠΈΠ²Π°Π΅ΠΌΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΡ ΡΡΡΡΠΊΡΡΡΡ, ΠΈ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ Π»ΠΈ ΡΡΡΡΠΊΡΡΡΠ½ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΎΠ΄Π½ΠΎΠΌΡ ΡΠΈΠΏΡ. Π Π°Π·Π»ΠΈΡΠ°Π΅ΠΌΡΠ΅ ΡΠΈΠΏΡ Π²ΠΊΠ»ΡΡΠ°ΡΡ Π² ΡΠ΅Π±Ρ ΡΠΈΡΠ»ΠΎΠ²ΡΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΡΡΡΠΎΠΊΠΈ, Π·Π°ΠΊΠ»ΡΡΠ΅Π½Π½ΡΠ΅ Π² ΠΊΠ°Π²ΡΡΠΊΠΈ, Π·Π½Π°ΡΠ΅Π½ΠΈΡ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ ΡΠΎΡΠΊΠΎΠΉ, Π°Π΄ΡΠ΅ΡΠ½ΡΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ (Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ Π² ΠΊΠ²Π°Π΄ΡΠ°ΡΠ½ΡΡ ΡΠΊΠΎΠ±ΠΊΠ°Ρ ΠΈΠ»ΠΈ ΠΏΡΠ΅Π΄Π²Π°ΡΠ΅Π½Π½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠΌ Β«ptrΒ»), ΠΌΠ½Π΅ΠΌΠΎΠ½ΠΈΠΊΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ, ΡΠ΅Π³ΠΈΡΡΡΡ, ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠ°, ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π° ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ ΡΠΈΠΏΠ° ΠΊΠΎΠ΄Π°. Π ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², Π΄Π΅ΠΉΡΡΠ²ΡΡΡΠΈΡ ΠΊΠ°ΠΊ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΠ΅Π»ΠΈ, ΡΠ°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ Π·Π°ΠΏΡΡΠ°Ρ ΠΈΠ»ΠΈ Π΄Π²ΠΎΠ΅ΡΠΎΡΠΈΠ΅, ΡΡΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ ΡΠΈΠΏ ΡΠ°ΠΌ ΠΏΠΎ ΡΠ΅Π±Π΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π²Π° Π·Π½Π°ΡΠ΅Π½ΠΈΡ, ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΠΈΠΌΠ΅Π½ΠΈ ΡΠ΅Π³ΠΈΡΡΡΠ° ΠΈ ΡΠΈΡΠ»ΠΎΠ²ΠΎΠ³ΠΎ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΡΠ°Π·Π΄Π΅Π»Π΅Π½Π½ΡΡ Π·Π°ΠΏΡΡΠΎΠΉ, Π±ΡΠ΄ΡΡ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π½Ρ ΠΊΠ°ΠΊ ΠΎΠ΄ΠΈΠ½ ΡΠΈΠΏ, Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ Π²ΠΈΠ΄Π° ΡΠ΅Π³ΠΈΡΡΡΠ° ΠΈ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΠΈ ΡΠΈΡΠ»ΠΎΠ²ΠΎΠ³ΠΎ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ; Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΡΡΠΎΠΊ, Π·Π°ΠΊΠ»ΡΡΠ΅Π½Π½ΡΡ Π² ΠΊΠ°Π²ΡΡΠΊΠΈ ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ ΡΠΎΡΠΊΠΎΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΡΠ½ΠΎΡΡΡΡΡ ΠΊ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΌ Π²ΠΈΠ΄ΠΎΠΌ ΡΠΈΡΠ»ΠΎΠ²ΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΡΠ°ΡΠΏΠΎΠ·Π½Π°ΡΡΡΡ ΠΊΠ°ΠΊ ΡΠ°Π·Π½ΡΠ΅ ΡΠΈΠΏΡ. ΠΠΎΡΡΠΎΠΌΡ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ Β«eax,16 eqtype fs,3+7Β» ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΈΡΡΠΈΠ½ΠΎΠΉ, Π½ΠΎ Β«eax,16 eqtype eax,1.6Β» β Π»ΠΎΠΆΡ.
2.2.2 ΠΠΎΠ²ΡΠΎΡΠ΅Π½ΠΈΠ΅ Π±Π»ΠΎΠΊΠΎΠ² ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ
Β«timesΒ» ΠΏΠΎΠ²ΡΠΎΡΡΠ΅Ρ ΠΎΠ΄Π½Ρ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ°Π·. ΠΠ° Π½Π΅ΠΉ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ ΡΠΈΡΠ»ΠΎΠ²ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΠΎΠ²ΡΠΎΡΠ΅Π½ΠΈΠΉ, ΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΡ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠ²ΡΠΎΡΡΡΡ (ΠΎΠΏΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΎΡΠ΄Π΅Π»ΠΈΡΡ ΡΠΈΡΠ»ΠΎ ΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π²ΠΎΠ΅ΡΠΎΡΠΈΠ΅). Π‘ΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΡΠΈΠΌΠ²ΠΎΠ» Β«%Β», ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΠΉΡΡ Π²Π½ΡΡΡΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ, ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ΅Π½ Π½ΠΎΠΌΠ΅ΡΡ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΠΏΠΎΠ²ΡΠΎΡΠ°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Β«times 5 db %Β» ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡ ΠΏΡΡΡ Π±Π°ΠΉΡΠΎΠ² ΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ 1, 2, 3, 4, 5. ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ ΡΠ°ΠΊΠΆΠ΅ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ Β«timesΒ», Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Β«times 3 times % db %Β» ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡ ΡΠ΅ΡΡΡ Π±Π°ΠΉΡΠΎΠ² ΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ 1, 1, 2, 1, 2, 3.