ΠΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ ΡΡΡΡΠΊΡΡΡΡ:
struc point x,y
{
.x dw x
.y dw y
}
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ Β«my point 7,11Β» ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡ ΡΡΡΡΠΊΡΡΡΡ, ΠΏΠΎΠΌΠ΅ΡΠ΅Π½Π½ΡΡ Β«myΒ», ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡ Π΄Π²Π΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅: Β«my.xΒ» ΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ 7 ΠΈ Β«my.yΒ» ΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ 11.
ΠΡΠ»ΠΈΠ³Π΄Π΅-ΡΠΎ Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΡΡΡΡΠΊΡΡΡΡ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ ΠΈΠΌΡ, ΡΠΎΡΡΠΎΡΡΠΈΠ΅ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ Π»ΠΈΡΡ ΡΠΎΡΠΊΠΈ, ΠΎΠ½ΠΎ Π·Π°ΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π½Π° ΠΈΠΌΡ ΠΌΠ΅ΡΠΊΠΈ Π΄Π»Ρ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ° ΡΡΡΡΠΊΡΡΡΡ ΠΈ ΡΡΠ° ΠΌΠ΅ΡΠΊΠ° ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π½Π΅ Π±ΡΠ΄Π΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π·Π°Π΄Π°ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅. Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΡΠΎ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ, ΡΡΠΎΠ±Ρ ΡΠ°ΡΡΠΈΡΠΈΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ Β«dbΒ» Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌΡΡ Π΄Π°Π½Π½ΡΡ :
struc db [data]
{
common
. db data
.size = $ β.
}
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΡΡΡΠΎΠΊΠ° Β«msg db 'Hello!',13,10Β» ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡ ΡΠ°ΠΊ ΠΆΠ΅ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ Β«msg.sizeΒ», ΡΠ°Π²Π½ΡΡ ΡΠ°Π·ΠΌΠ΅ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌΡΡ Π΄Π°Π½Π½ΡΡ Π² Π±Π°ΠΉΡΠ°Ρ .
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΡΡΡΠΊΡΡΡ Π΄Π°Π½Π½ΡΡ , Π°Π΄ΡΠ΅ΡΠΎΠ²Π°Π½Π½ΡΡ ΡΠ΅Π³ΠΈΡΡΡΠ°ΠΌΠΈ ΠΈΠ»ΠΈ Π°Π±ΡΠΎΠ»ΡΡΠ½ΡΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ΄Π΅Π»Π°Π½ΠΎ ΡΡΡΡΠΊΡΡΡΠ½ΡΠΌΠΈ ΠΌΠ°ΠΊΡΠΎΠΈΠ½ΡΡΡΡΠΊΡΠΈΡΠΌΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ Β«virtualΒ» (ΡΠΌΠΎΡΡΠΈΡΠ΅ 2.2.3).
Β«restrucΒ» ΡΠ΄Π°Π»ΡΠ΅Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΡΡΡΠΊΡΡΡΡ, ΡΠ°ΠΊ ΠΆΠ΅ ΠΊΠ°ΠΊ Β«purgeΒ» Π΄Π΅Π»Π°Π΅Ρ Ρ ΠΌΠ°ΠΊΡΠΎΡΠ°ΠΌΠΈ ΠΈ Β«restoreΒ» Ρ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΌΠΈ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ°ΠΌΠΈ. ΠΠΈΡΠ΅ΠΊΡΠΈΠ²Π° ΠΈΠΌΠ΅Π΅Ρ ΡΠΎΡ ΠΆΠ΅ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ β Π·Π° Π½Π΅ΠΉ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ ΠΎΠ΄Π½ΠΎ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΈΠΌΠ΅Π½ ΡΡΡΡΠΊΡΡΡΠ½ΡΡ ΠΌΠ°ΠΊΡΠΎΡΠΎΠ², ΡΠ°Π·Π΄Π΅Π»Π΅Π½Π½ΡΡ Π·Π°ΠΏΡΡΡΠΌΠΈ.
2.3.5 ΠΠΎΠ²ΡΠΎΡΠ΅Π½ΠΈΠ΅ ΠΌΠ°ΠΊΡΠΎΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ
ΠΠΈΡΠ΅ΠΊΡΠΈΠ²Π° Β«reptΒ» β ΡΡΠΎ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΉ Π²ΠΈΠ΄ ΠΌΠ°ΠΊΡΠΎΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠΉ Π΄Π΅Π»Π°Π΅Ρ Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ² Π±Π»ΠΎΠΊΠ°, Π·Π°ΠΊΠ»ΡΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π² ΡΠΈΠ³ΡΡΠ½ΡΠ΅ ΡΠΊΠΎΠ±ΠΊΠΈ. ΠΡΠΎΡΡΠΎΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ β ΡΠΈΡΠ»ΠΎ, ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅ Π·Π° Β«reptΒ» (ΡΡΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ Π½Π΅ ΡΠΎΠ²Π΅ΡΡΠ°Π΅Ρ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ, Π΅ΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½Ρ ΠΏΠΎΠ²ΡΠΎΡΠ΅Π½ΠΈΡ, Π±Π°Π·ΠΈΡΡΡΡΠΈΠ΅ΡΡ Π½Π° Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡΡ , Π²ΡΡΠΈΡΠ»Π΅Π½Π½ΡΡ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠΎΠΌ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΎΠ΄Π½Ρ ΠΈΠ· Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ², ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΠΌΡΡ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠΎΠΌ, ΡΠΌΠΎΡΡΠΈΡΠ΅ 2.2.2), ΠΈ Π±Π»ΠΎΠΊ ΠΊΠΎΠ΄Π°, Π·Π°ΠΊΠ»ΡΡΠ΅Π½Π½ΡΠΉ ΠΌΠ΅ΠΆΠ΄Ρ Π·Π½Π°ΠΊΠ°ΠΌΠΈ Β«{Β» ΠΈ Β«}Β». ΠΡΠΎΡΡΠ΅ΠΉΡΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ:
rept 5 { in al,dx }
ΡΠΎΠ·Π΄Π°Π΅Ρ ΠΏΡΡΡ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ² ΡΡΡΠΎΠΊΠΈ Β«in al,dxΒ». ΠΠ»ΠΎΠΊ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΡΠ°ΠΊΠΈΠΌ ΠΆΠ΅ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΊΠ°ΠΊ Π΄Π»Ρ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ ΠΌΠ°ΠΊΡΠΎΡΠΎΠ², ΠΈ Π΄ΠΎΠΏΡΡΠΊΠ°ΡΡΡΡ Π²ΡΠ΅ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π²Π½ΡΡΡΠΈ ΠΌΠ°ΠΊΡΠΎΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ. ΠΡΠ»ΠΈ Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΡΠ°Π²Π½ΠΎ Π½ΡΠ»Ρ, Π±Π»ΠΎΠΊ ΠΏΡΠΎΡΡΠΎ ΠΏΡΠΎΠΏΡΡΠΊΠ°Π΅ΡΡΡ, ΠΊΠ°ΠΊ Π΅ΡΠ»ΠΈ Π±Ρ Π²Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΠ»ΠΈ ΠΌΠ°ΠΊΡΠΎΡ, Π½ΠΎ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ Π΅Π³ΠΎ. ΠΠ° ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ ΠΏΠΎΠ²ΡΠΎΡΠ΅Π½ΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ ΠΈΠΌΡ ΡΠΈΠΌΠ²ΠΎΠ»Π°-ΡΡΠ΅ΡΡΠΈΠΊΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΠΎ Π±ΡΠ΄Π΅Ρ Π·Π°ΠΌΠ΅Π½ΡΡΡΡΡ Π½Π° Π½ΠΎΠΌΠ΅Ρ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΠΏΠΎΠ²ΡΠΎΡΠ΅Π½ΠΈΡ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
rept 3 counter
{
byte#counter db counter
}
Π‘Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ ΡΡΡΠΎΠΊΠΈ:
byte1 db 1
byte2 db 2
byte3 db 3
ΠΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ ΠΏΠΎΠ²ΡΠΎΡΠ΅Π½ΠΈΡ, ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΡΠΉ ΠΊ Π±Π»ΠΎΠΊΠ°ΠΌ Β«reptΒ» ΡΠ°ΠΊΠΎΠΉ ΠΆΠ΅, ΠΊΠ°ΠΊ ΡΠΎΡ, ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΡΡ Π³ΡΡΠΏΠΏ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² ΠΌΠ°ΠΊΡΠΎΡΠΎΠ², ΡΠΎ Π΅ΡΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Β«forwardΒ», Β«commonΒ» ΠΈ Β«reverseΒ» ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΈΡ ΠΎΠ±ΡΡΠ½ΠΎΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠΈ.
ΠΡΠ°ΠΊ, ΡΠ°ΠΊΠΎΠΉ ΠΌΠ°ΠΊΡΠΎΡ:
rept 7 num { reverse display `num }
ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΠΎΡ 7 Π΄ΠΎ 1 ΠΊΠ°ΠΊ ΡΠ΅ΠΊΡΡ. ΠΠΈΡΠ΅ΠΊΡΠΈΠ²Π° Β«localΒ» ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ Π²Π½ΡΡΡΠΈ ΠΌΠ°ΠΊΡΠΎΡΠΎΠ² Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ Π³ΡΡΠΏΠΏΠ°ΠΌΠΈ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ², ΡΠΎ Π΅ΡΡΡ:
rept 21
{
local label
label: loop label
}
ΡΠ³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΡ ΠΌΠ΅ΡΠΊΡ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠ°. Π‘ΠΈΠΌΠ²ΠΎΠ»-ΡΡΠ΅ΡΡΠΈΠΊ ΠΎΠ±ΡΡΠ½ΠΎ Π½Π°ΡΠΈΠ½Π°Π΅Ρ Ρ 1, Π½ΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠ±ΡΡΠ²ΠΈΡΡ Π΄ΡΡΠ³ΠΎΠ΅ Π±Π°Π·ΠΎΠ²ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΠΏΡΠ΅Π΄Π²Π°ΡΠ΅Π½Π½ΠΎΠ΅ Π·Π°ΠΏΡΡΠΎΠΉ, ΡΡΠ°Π·Ρ ΠΆΠ΅ ΠΏΠΎΡΠ»Π΅ ΠΈΠΌΠ΅Π½ΠΈ ΡΡΠ΅ΡΡΠΈΠΊΠ°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
rept 8 n:0 { pxor xmm#n,xmm#n }
Π‘Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ ΠΊΠΎΠ΄, ΠΎΡΠΈΡΠ°ΡΡΠΈΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ΅Π³ΠΈΡΡΡΠΎΠ² SSE. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΠ΅ΡΡΠΈΠΊΠΎΠ², ΡΠ°Π·Π΄Π΅Π»Π΅Π½Π½ΡΡ Π·Π°ΠΏΡΡΡΠΌΠΈ, ΠΈ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡ ΡΠ²ΠΎΡ Π±Π°Π·Ρ.
Β«irpΒ» ΠΈΡΠ΅ΡΠΈΡΡΠ΅Ρ ΠΎΠ΄ΠΈΠ½ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ ΡΠ΅ΡΠ΅Π· Π΄Π°Π½Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ². Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ ΡΠ°ΠΊΠΎΠΉ: Π·Π° Β«irpΒ» ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΠΌΡ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ°, Π΄Π°Π»Π΅Π΅ Π·Π°ΠΏΡΡΠ°Ρ ΠΈ Π΄Π°Π»Π΅Π΅ ΡΠΏΠΈΡΠΎΠΊ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ². ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ ΡΠ°ΠΊΠΈΠΌ ΠΆΠ΅ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΊΠ°ΠΊ Π² Π²ΡΠ·ΠΎΠ²Π΅ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΠΊΡΠΎΡΠ°, ΡΠΎ Π΅ΡΡΡ ΠΎΠ½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ°Π·Π΄Π΅Π»ΡΡΡΡΡ Π·Π°ΠΏΡΡΡΠΌΠΈ ΠΈ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π·Π°ΠΊΠ»ΡΡΠ΅Π½ ΠΌΠ΅ΠΆΠ΄Ρ Π·Π½Π°ΠΊΠ°ΠΌΠΈ Β«<Β» ΠΈ Β«>Β». Π’Π°ΠΊ ΠΆΠ΅ Π·Π° ΠΈΠΌΠ΅Π½Π΅ΠΌ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° ΠΌΠΎΠΆΠ΅Ρ ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ Β«*Β» Π΄Π»Ρ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΎΠ½ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡ ΠΏΡΡΡΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅. Π’Π°ΠΊΠΎΠΉ Π±Π»ΠΎΠΊ:
irp value, 2,3,5
{ db value }
ΡΠ³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ ΡΡΡΠΎΠΊΠΈ:
db 2
db 3
db 5
Β«irpsΒ» ΠΈΡΠ΅ΡΠΈΡΡΠ΅Ρ ΡΠ΅ΡΠ΅Π· Π΄Π°Π½Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², Π·Π° Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²ΠΎΠΉ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ ΠΈΠΌΡ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ°, Π΄Π°Π»Π΅Π΅ Π·Π°ΠΏΡΡΠ°Ρ ΠΈ Π΄Π°Π»Π΅Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π»ΡΠ±ΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ². ΠΠ°ΠΆΠ΄ΡΠΉ ΡΠΈΠΌΠ²ΠΎΠ» Π² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ, Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΡΠΎΠ³ΠΎ, ΡΠΈΠΌΠ²ΠΎΠ»Ρ Π»ΠΈ ΡΡΠΎ ΠΈΠΌΠ΅Π½, Π·Π½Π°ΠΊΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ΠΈΠ»ΠΈ ΡΡΡΠΎΠΊΠΈ Π² ΠΊΠ°Π²ΡΡΠΊΠ°Ρ , ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° Π½Π° ΠΎΠ΄Π½Ρ ΠΈΡΠ΅ΡΠ°ΡΠΈΡ. ΠΡΠ»ΠΈ Π·Π° Π·Π°ΠΏΡΡΠΎΠΉ Π½ΠΈΠΊΠ°ΠΊΠΈΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π½Π΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ, ΡΠΎ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΉ Π½Π΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡ Π²ΠΎΠΎΠ±ΡΠ΅. ΠΡΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ:
irps reg, al bx ecx
{ xor reg,reg }
ΡΠ³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ ΡΡΡΠΎΠΊΠΈ:
xor al,al
xor bx,bx
xor ecx,ecx
ΠΠ»ΠΎΠΊΠΈ, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π°ΠΌΠΈ Β«irpΒ» ΠΈ Β«irpsΒ», ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΌΠ°ΠΊΡΠΎΡΡ, ΡΠΎ Π΅ΡΡΡ ΠΎΠΏΠ΅ΡΠ°Π½Π΄Ρ ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ, ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΡΠ΅ Π΄Π»Ρ ΠΌΠ°ΠΊΡΠΎΡΠΎΠ² ΠΌΠΎΠ³ΡΡ Π² Π½ΠΈΡ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ.
2.3.6 Π£ΡΠ»ΠΎΠ²Π½ΡΠΉ ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΈΠ½Π³
ΠΡΠΈ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ Β«matchΒ» Π½Π΅ΠΊΠΎΡΠΎΡΡΠΉ Π±Π»ΠΎΠΊ ΠΊΠΎΠ΄Π° ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΡΡΡ ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠΌ ΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΡΡ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΡ, ΡΠΎΠ»ΡΠΊΠΎ Π΅ΡΠ»ΠΈ Π·Π°Π΄Π°Π½Π½Π°Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ΡΠΎΠ²ΠΏΠ°Π΄Π°Π΅Ρ Ρ ΠΎΠ±ΡΠ°Π·ΡΠΎΠΌ. ΠΠ±ΡΠ°Π·Π΅Ρ ΠΈΠ΄Π΅Ρ ΠΏΠ΅ΡΠ²ΡΠΌ, Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Π΅ΡΡΡ Π·Π°ΠΏΡΡΠΎΠΉ, Π΄Π°Π»Π΅Π΅ ΠΈΠ΄ΡΡ ΡΠΈΠΌΠ²ΠΎΠ»Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡΡ ΠΏΠΎΠ΄ ΠΎΠ±ΡΠ°Π·Π΅Ρ, ΠΈ Π΄Π°Π»Π΅Π΅ Π±Π»ΠΎΠΊ ΠΊΠΎΠ΄Π°, Π·Π°ΠΊΠ»ΡΡΠ΅Π½Π½ΡΠΉ Π² ΡΠΈΠ³ΡΡΠ½ΡΠ΅ ΡΠΊΠΎΠ±ΠΊΠΈ, ΠΊΠ°ΠΊ ΠΌΠ°ΠΊΡΠΎΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ.
ΠΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠ°Π²ΠΈΠ» Π΄Π»Ρ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ Π΄Π»Ρ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ, ΠΏΠ΅ΡΠ²ΠΎΠ΅ β ΡΡΠΎ Π»ΡΠ±ΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠ΅ Π·Π½Π°ΠΊΠΈ ΠΈ ΡΡΡΠΎΠΊΠΈ Π² ΠΊΠ°Π²ΡΡΠΊΠ°Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°ΡΡ Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎ ΡΠΎΡΠ½ΠΎ. Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅:
match +,+ { include 'first.inc' }
match +,- { include 'second.inc' }
ΠΠ΅ΡΠ²ΡΠΉ ΡΠ°ΠΉΠ» Π±ΡΠ΄Π΅Ρ Π²ΠΊΠ»ΡΡΠ΅Π½, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Β«+Β» ΠΏΠΎΡΠ»Π΅ Π·Π°ΠΏΡΡΠΎΠΉ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ Β«+Β» Π² ΠΎΠ±ΡΠ°Π·ΡΠ΅, Π° Π²ΡΠΎΡΠΎΠΉ ΡΠ°ΠΉΠ» Π½Π΅ Π±ΡΠ΄Π΅Ρ Π²ΠΊΠ»ΡΡΠ΅Π½, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΡ Π½Π΅Ρ.
Π§ΡΠΎΠ±Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°ΡΡ Π»ΡΠ±ΠΎΠΌΡ Π΄ΡΡΠ³ΠΎΠΌΡ ΡΠΈΠΌΠ²ΠΎΠ»Ρ Π±ΡΠΊΠ²Π°Π»ΡΠ½ΠΎ, ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡΠ΅Π΄Π²Π°ΡΡΡΡΡ Π·Π½Π°ΠΊΠΎΠΌ Β«=Β» Π² ΠΎΠ±ΡΠ°Π·ΡΠ΅. Π’Π°ΠΊΠΆΠ΅ ΡΡΠΎΠ±Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ ΡΠ°ΠΌ Π·Π½Π°ΠΊ Β«=Β», ΠΈΠ»ΠΈ Π·Π°ΠΏΡΡΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ Β«==Β» ΠΈ Β«=,Β». ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΎΠ±ΡΠ°Π·Π΅Ρ Β«=a==Β» Π±ΡΠ΄Π΅Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Β«a=Β».
ΠΡΠ»ΠΈ Π² ΠΎΠ±ΡΠ°Π·ΡΠ΅ ΡΡΠΎΠΈΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΈΠΌΠ²ΠΎΠ» ΠΈΠΌΠ΅Π½ΠΈ, ΠΎΠ½ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ Π»ΡΠ±ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ΅ΠΉ ΠΏΠΎ ΠΊΡΠ°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ ΡΠΈΠΌΠ²ΠΎΠ» ΠΈ Π΅Π³ΠΎ ΠΈΠΌΡ Π·Π°ΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π½Π° ΠΏΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΡΡ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π²Π΅Π·Π΄Π΅ Π² ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ Π±Π»ΠΎΠΊΠ΅, Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌ Π² ΠΌΠ°ΠΊΡΠΎΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
match a-b, 0β7
{ dw a,b-a }
ΡΠ³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ Β«dw 0, 7β0Β». ΠΠ°ΠΆΠ΄ΠΎΠ΅ ΠΈΠΌΡ Π²ΡΠ΅Π³Π΄Π° ΡΡΠ°Π²ΠΈΡΡΡ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΌΠ΅Π½ΡΡΠ΅ΠΌΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Ρ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², ΠΎΡΡΠ°Π²Π»ΡΡ ΠΎΡΡΠ°Π²ΡΠΈΠ΅ΡΡ, ΡΠΎ Π΅ΡΡΡ:
match a b, 1+2+3 { db a }
ΠΈΠΌΡ Β«aΒ» Π±ΡΠ΄Π΅Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°ΡΡ ΡΠΈΠΌΠ²ΠΎΠ»Ρ Β«1Β», ΠΎΡΡΠ°Π²Π»ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Β«+2+3Β» Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ Ρ Β«bΒ». ΠΠΎ, ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
match a b, 1 { db a }
Π΄Π»Ρ Β«bΒ» Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ ΠΎΡΡΠ°Π΅ΡΡΡ, ΠΈ Π±Π»ΠΎΠΊ Π²ΠΎΠΎΠ±ΡΠ΅ Π½Π΅ Π±ΡΠ΄Π΅Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π½.
ΠΠ»ΠΎΠΊ ΠΊΠΎΠ΄Π°, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²ΠΎΠΉ Β«matchΒ» ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΡΡΡ ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ Π»ΡΠ±Π°Ρ ΠΌΠ°ΠΊΡΠΎΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ, ΠΏΠΎΡΡΠΎΠΌΡ Π·Π΄Π΅ΡΡ ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π»ΡΠ±ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ, ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΡΠ΅ Π΄Π»Ρ ΠΌΠ°ΠΊΡΠΎΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ.
Π§ΡΠΎ Π΄Π΅Π»Π°Π΅Ρ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ Β«matchΒ» ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ, ΡΠ°ΠΊ ΡΡΠΎ ΡΠΎΡ ΡΠ°ΠΊΡ, ΡΡΠΎ ΠΎΠ½Π° Π·Π°ΠΌΠ΅Π½ΡΠ΅Ρ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠ΅ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ Π½Π° ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π² ΠΏΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΠΎΠΉ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² (ΡΠΎ Π΅ΡΡΡ Π²Π΅Π·Π΄Π΅ ΠΏΠΎΡΠ»Π΅ Π·Π°ΠΏΡΡΠΎΠΉ Π΄ΠΎ Π½Π°ΡΠ°Π»Π° Π±Π»ΠΎΠΊΠ° ΠΊΠΎΠ΄Π°) ΠΏΠ΅ΡΠ΅Π΄ Π½Π°ΡΠ°Π»ΠΎΠΌ ΡΠΎΠΏΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ. ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΡΠΎΠΌΡ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π° ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ° ΠΊΠΎΠ΄Π° Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠ»ΠΎΠ²ΠΈΡ, ΡΡΠΎ Π΄Π°Π½Π½Π°Ρ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½Π°Ρ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ° ΠΈΠΌΠ΅Π΅Ρ Π½ΡΠΆΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
match =TRUE, DEBUG { include 'debug.inc' }
Π·Π΄Π΅ΡΡ ΡΠ°ΠΉΠ» Π±ΡΠ΄Π΅Ρ Π²ΠΊΠ»ΡΡΠ΅Π½, ΡΠΎΠ»ΡΠΊΠΎ Π΅ΡΠ»ΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½Π°Ρ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ° Β«DEBUGΒ» ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π° ΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ Β«TRUEΒ».
2.3.7 ΠΠΎΡΡΠ΄ΠΎΠΊ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ
ΠΡΠΈ ΡΠΎΡΠ΅ΡΠ°Π½ΠΈΠΈ ΡΠ°Π·Π½ΡΡ ΡΠ²ΠΎΠΉΡΡΠ² ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° Π²Π°ΠΆΠ½ΠΎ Π·Π½Π°ΡΡ ΠΏΠΎΡΡΠ΄ΠΎΠΊ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΎΠ½ΠΈ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ. ΠΠ°Ρ ΡΠΆΠ΅ Π±ΡΠ»ΠΎ ΠΎΡΠΌΠ΅ΡΠ΅Π½ΠΎ, Π²ΡΡΡΠΈΠΉ ΠΏΡΠΈΠΎΡΠΈΡΠ΅Ρ ΠΈΠΌΠ΅Π΅Ρ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π° Β«fixΒ» ΠΈ Π·Π°ΠΌΠ΅Π½Ρ, Π΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅. ΠΡΠΎ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π΄Π΅Π»Π°Π΅ΡΡΡ ΠΏΠ΅ΡΠ΅Π΄ ΡΠΎΠ²Π΅ΡΡΠ΅Π½ΠΈΠ΅ΠΌ Π»ΡΠ±ΠΎΠ³ΠΎ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΈΠ½Π³Π°, ΠΏΠΎΡΡΠΎΠΌΡ ΡΠ°ΠΊΠΎΠΉ ΠΊΡΡΠΎΠΊ ΠΊΠΎΠ΄Π°:
V fix {
macro empty
V
V fix }
V
Π΄Π΅Π»Π°Π΅Ρ Π΄ΠΎΠΏΡΡΡΠΈΠΌΠΎΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΡΡΡΠΎΠ³ΠΎ ΠΌΠ°ΠΊΡΠΎΡΠ°. ΠΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π° Β«fixΒ» ΠΈ ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠ½ΡΠ΅ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ Π½Π° ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΉ ΡΡΠ°Π΄ΠΈΠΈ, ΠΈ Π²Π΅ΡΡ ΠΎΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΈΠ½Π³ Π΄Π΅Π»Π°Π΅ΡΡΡ Π½Π° ΡΠ΅Π·ΡΠ»ΡΡΠΈΡΡΡΡΠ΅ΠΌ ΠΊΠΎΠ΄Π΅.
Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΈΠ½Π³, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ ΠΏΠΎΡΠ»Π΅, Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ Ρ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°Π½ΠΈΡ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Π°. Π‘Π½Π°ΡΠ°Π»Π° ΠΈΠ΄Π΅Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°, ΠΈ Π΅ΡΠ»ΠΈ Π½ΠΈ ΠΎΠ΄Π½Π° ΠΈΠ· Π½ΠΈΡ Π½Π΅ ΠΎΠΏΠΎΠ·Π½Π°Π½Π°, ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ, ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΈ ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠΈΠΌΠ²ΠΎΠ» ΠΌΠ°ΠΊΡΠΎΠΈΠ½ΡΡΡΡΠΊΡΠΈΠ΅ΠΉ. ΠΡΠ»ΠΈ ΠΌΠ°ΠΊΡΠΎΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½Π°, ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡ ΠΊΠΎ Π²ΡΠΎΡΠΎΠΌΡ ΡΠΈΠΌΠ²ΠΎΠ»Ρ Π½Π° ΡΡΡΠΎΠΊΠ΅, ΠΈ ΡΠ½ΠΎΠ²Π° Π½Π°ΡΠΈΠ½Π°Π΅Ρ Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π½Π° Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ, ΡΠΏΠΈΡΠΎΠΊ ΠΊΠΎΡΠΎΡΡΡ Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ Π»ΠΈΡΡ Β«equΒ», ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ ΠΎΠΊΠ°Π·Π°ΡΡ Π²ΡΠΎΡΡΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠΌ Π½Π° ΡΡΡΠΎΠΊΠ΅. ΠΡΠ»ΠΈ Π½Π΅Ρ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ, Π²ΡΠΎΡΠΎΠΉ ΡΠΈΠΌΠ²ΠΎΠ» ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΡΡΡ Π½Π° ΡΡΡΡΠΊΡΡΡΠ½ΡΡ ΠΌΠ°ΠΊΡΠΎΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ, ΠΈ Π΅ΡΠ»ΠΈ Π½ΠΈ ΠΎΠ΄Π½Π° ΠΈΠ· ΡΡΠΈΡ ΠΏΡΠΎΠ²Π΅ΡΠΎΠΊ Π½Π΅ Π΄Π°Π»Π° ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°, ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠ΅ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ Π·Π°ΠΌΠ΅Π½ΡΡΡΡΡ Π½Π° ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, ΠΈ ΡΡΡΠΎΠΊΠ° ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΡΡ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΡ.