Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π° DB Π² Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅. ΠΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ DUP. ΠΠ°ΠΊΠΈΠ΅ Π΅ΡΡΡ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ DB ΠΈ DUP Π² Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°Ρ . ΠΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΠΎΠ±ΡΡΠ²Π»ΡΡΡ ΠΌΠ°ΡΡΠΈΠ²Ρ ΠΈ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π΄Π°Π½Π½ΡΠ΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΈΡ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ².
ΠΠΈΡΠ΅ΠΊΡΠΈΠ²Π° DB Π² Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅: ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅
ΠΠΈΡΠ΅ΠΊΡΠΈΠ²Π° DB (Define Byte) ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π±Π°Π·ΠΎΠ²ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ² Π² Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ . ΠΠ½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ ΠΏΠΎΠ΄ Π±Π°ΠΉΡΠΎΠ²ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ.
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΠΏΠΎΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ DB:
- ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ
Π±Π°ΠΉΡΠΎΠ²ΡΡ
Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ:
NUM DB 34
— ΡΠΎΠ·Π΄Π°Π΅Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ NUM ΠΈ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅Ρ Π΅ΠΉ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 34 - ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΡΡΠΎΠΊ:
MSG DB 'Hello'
— ΡΠΎΠ·Π΄Π°Π΅Ρ ΡΡΡΠΎΠΊΡ ΠΈΠ· 5 Π±Π°ΠΉΡ - ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ²:
ARR DB 1, 2, 3, 4, 5
— ΡΠΎΠ·Π΄Π°Π΅Ρ ΠΌΠ°ΡΡΠΈΠ² ΠΈΠ· 5 Π±Π°ΠΉΡ
ΠΠ°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΡΡΠΎ DB Π²ΡΠ΅Π³Π΄Π° ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΡΠ΅Ρ ΠΏΠ°ΠΌΡΡΡ ΠΏΠΎΠ΄ Π±Π°ΠΉΡΡ, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡΡΡ ΡΠΈΡΠ»Π° Π±ΠΎΠ»ΡΡΠ΅ 255. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
VAL DB 1000
ΠΡΠΎ ΡΠΎΠ·Π΄Π°ΡΡ 2 Π±Π°ΠΉΡΠ° — 232 ΠΈ 3, ΡΠ°ΠΊ ΠΊΠ°ΠΊ 1000 Π² Π΄Π²ΠΎΠΈΡΠ½ΠΎΠΌ Π²ΠΈΠ΄Π΅ ΡΡΠΎ 11 1110 1000.

ΠΠΏΠ΅ΡΠ°ΡΠΎΡ DUP: Π΄ΡΠ±Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ
DUP (Duplicate) — ΡΡΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ°Π·. ΠΠ½ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π²ΠΌΠ΅ΡΡΠ΅ Ρ DB Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ².
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ DUP:
ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ DUP (Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅)
ΠΡΠΈΠΌΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ DUP:
ARR DB 5 DUP (0)
— ΡΠΎΠ·Π΄Π°Π΅Ρ ΠΌΠ°ΡΡΠΈΠ² ΠΈΠ· 5 Π½ΡΠ»Π΅Π²ΡΡ Π±Π°ΠΉΡSTR DB 10 DUP ('A')
— ΡΠΎΠ·Π΄Π°Π΅Ρ ΡΡΡΠΎΠΊΡ ΠΈΠ· 10 ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ‘A’BUF DB 100 DUP (?)
— ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΡΠ΅Ρ 100 Π½Π΅ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π±Π°ΠΉΡ
ΠΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ DB ΠΈ DUP
ΠΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ DB ΠΈ DUP Π²Π°ΠΆΠ½ΠΎ ΡΡΠΈΡΡΠ²Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠΎΠΌΠ΅Π½ΡΠΎΠ²:
- DB Π²ΡΠ΅Π³Π΄Π° ΠΎΠΏΠ΅ΡΠΈΡΡΠ΅Ρ Π±Π°ΠΉΡΠ°ΠΌΠΈ. ΠΠ»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠ»ΠΎΠ² (2 Π±Π°ΠΉΡΠ°) ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ DW, Π΄Π»Ρ Π΄Π²ΠΎΠΉΠ½ΡΡ ΡΠ»ΠΎΠ² — DD.
- DUP ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Ρ Π»ΡΠ±ΡΠΌΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π°ΠΌΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ (DB, DW, DD ΠΈ Ρ.Π΄.).
- ΠΠ½ΡΡΡΠΈ DUP ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ:
ARR DB 10 DUP (1, 2, 3)
— ΡΠΎΠ·Π΄Π°ΡΡ ΠΌΠ°ΡΡΠΈΠ² ΠΈΠ· 30 Π±Π°ΠΉΡ - Π‘ΠΈΠΌΠ²ΠΎΠ» ? Π² DUP ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ Π½Π΅ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅.
ΠΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ΅ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² Ρ ΠΏΠΎΠΌΠΎΡΡΡ DB ΠΈ DUP
ΠΡΠΈ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠΈ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² Ρ ΠΏΠΎΠΌΠΎΡΡΡ DB ΠΈ DUP ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΏΡΠΈΠ΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΏΡΠ°Π²ΠΈΠ»:

- ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ DUP Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π±ΠΎΠ»ΡΡΠΈΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² Ρ ΠΏΠΎΠ²ΡΠΎΡΡΡΡΠΈΠΌΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ
- ΠΠ»Ρ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² Ρ ΡΠ°Π·Π½ΡΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΏΡΠΎΡΡΠΎ DB Ρ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ²
- ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ? Π²Π½ΡΡΡΠΈ DUP, Π΅ΡΠ»ΠΈ Π½Π°ΡΠ°Π»ΡΠ½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π½Π΅ Π²Π°ΠΆΠ½Ρ
- ΠΠΎΠΌΠ½ΠΈΡΠ΅ ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² — DB Π΄Π»Ρ Π±Π°ΠΉΡ, DW Π΄Π»Ρ ΡΠ»ΠΎΠ² ΠΈ Ρ.Π΄.
ΠΡΠΈΠΌΠ΅ΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ²:
SMALL_ARR DB 1, 2, 3, 4, 5 ; ΠΠ°Π»Π΅Π½ΡΠΊΠΈΠΉ ΠΌΠ°ΡΡΠΈΠ² Ρ ΡΠ°Π·Π½ΡΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ
BIG_ARR DB 1000 DUP (0) ; ΠΠΎΠ»ΡΡΠΎΠΉ ΠΌΠ°ΡΡΠΈΠ², Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π½ΡΠΉ Π½ΡΠ»ΡΠΌΠΈ
MATRIX DB 10 DUP (10 DUP (0)) ; ΠΠ²ΡΠΌΠ΅ΡΠ½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ² 10x10
BUFFER DB 512 DUP (?) ; ΠΡΡΠ΅Ρ Π±Π΅Π· Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ
ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π΄Π°Π½Π½ΡΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ DB ΠΈ DUP
DB ΠΈ DUP ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ Π³ΠΈΠ±ΠΊΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π΄Π»Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π΄Π°Π½Π½ΡΡ Π² Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°Ρ . Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΈΠΏΠΈΡΠ½ΡΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΠΈ:
ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΡΡΠΎΠΊ
ΠΠ»Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΡΡΠΎΠΊ ΠΎΠ±ΡΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ DB Π±Π΅Π· DUP:
MESSAGE DB 'Hello, World!', 0 ; Π‘ΡΡΠΎΠΊΠ°, Π·Π°Π²Π΅ΡΡΠ°ΡΡΠ°ΡΡΡ Π½ΡΠ»Π΅ΠΌ
NAME DB 'John Doe' ; Π‘ΡΡΠΎΠΊΠ° ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ
ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠΈΡΠ»ΠΎΠ²ΡΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ²
ΠΠ»Ρ ΡΠΈΡΠ»ΠΎΠ²ΡΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ DB, ΡΠ°ΠΊ ΠΈ DUP:

NUMBERS DB 1, 2, 3, 4, 5 ; ΠΠ°ΡΡΠΈΠ² ΠΈΠ· 5 ΡΠΈΡΠ΅Π»
HUNDREDS DB 100 DUP (100) ; 100 ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ 100
SEQUENCE DB 10 DUP (1, 2, 3, 4, 5) ; ΠΠΎΠ²ΡΠΎΡΡΡΡΠ°ΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ
ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΡΡΡΠΊΡΡΡ Π΄Π°Π½Π½ΡΡ
DB ΠΈ DUP ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ»ΠΎΠΆΠ½ΡΡ ΡΡΡΡΠΊΡΡΡ Π΄Π°Π½Π½ΡΡ :
PERSON DB 'John Doe', 0, 30, 5 DUP (0) ; ΠΠΌΡ, Π²ΠΎΠ·ΡΠ°ΡΡ ΠΈ 5 Π±Π°ΠΉΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ
Π΄Π°Π½Π½ΡΡ
TEAM DB 10 DUP ('Player', 0, 25, 0) ; ΠΠ°ΡΡΠΈΠ² ΠΈΠ· 10 Π·Π°ΠΏΠΈΡΠ΅ΠΉ ΠΈΠ³ΡΠΎΠΊΠΎΠ²
Π’ΠΈΠΏΠΈΡΠ½ΡΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ DB ΠΈ DUP
ΠΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ DB ΠΈ DUP Π½ΠΎΠ²ΠΈΡΠΊΠΈ ΡΠ°ΡΡΠΎ Π΄ΠΎΠΏΡΡΠΊΠ°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ:
- ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ DB Π΄Π»Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π±ΠΎΠ»ΡΡΠ΅ 255 Π±Π΅Π· ΡΡΠ΅ΡΠ° ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ
- ΠΠ°Π±ΡΠ²Π°Π½ΠΈΠ΅ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ DUP ΡΠΎΠ·Π΄Π°Π΅Ρ Π½Π΅ΠΏΡΠ΅ΡΡΠ²Π½ΡΠΉ Π±Π»ΠΎΠΊ Π΄Π°Π½Π½ΡΡ
- ΠΠ΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠ°Π²ΡΡΠ΅ΠΊ ΠΏΡΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΡΡΡΠΎΠΊ
- ΠΡΡΠ°Π½ΠΈΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ DB, DW ΠΈ DD ΠΏΡΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ Π΄Π°Π½Π½ΡΡ ΡΠ°Π·Π½ΠΎΠ³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ°
ΠΡΠΈΠΌΠ΅Ρ Π½Π΅ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°:
WRONG_VAL DB 1000 ; ΠΡΠ΄Π΅Ρ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠΈΡΠΎΠ²Π°Π½ΠΎ ΠΊΠ°ΠΊ Π΄Π²Π° Π±Π°ΠΉΡΠ°: 232 ΠΈ 3
BAD_STR DB "Hello' ; ΠΠ΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠ΅ ΠΊΠ°Π²ΡΡΠΊΠΈ
MIXED_ARR DB 5 DUP (1, 2) ; Π‘ΠΎΠ·Π΄Π°ΡΡ ΠΌΠ°ΡΡΠΈΠ² ΠΈΠ· 10 Π±Π°ΠΉΡ, Π° Π½Π΅ 5
ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ DB ΠΈ DUP

- ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ DUP Π΄Π»Ρ Π±ΠΎΠ»ΡΡΠΈΡ Π±Π»ΠΎΠΊΠΎΠ² Ρ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ Π²ΠΌΠ΅ΡΡΠΎ ΠΈΡ ΡΠ²Π½ΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΡ
- ΠΡΡΠΏΠΏΠΈΡΡΠΉΡΠ΅ ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π΄Π»Ρ Π»ΡΡΡΠ΅ΠΉ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΡΡΠΈ ΠΊΡΡΠ°
- ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ? Π΄Π»Ρ Π½Π΅ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π΄Π°Π½Π½ΡΡ , ΡΡΠΎΠ±Ρ ΡΠΌΠ΅Π½ΡΡΠΈΡΡ ΡΠ°Π·ΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°
- ΠΡΡΠ°Π²Π½ΠΈΠ²Π°ΠΉΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΏΠΎ Π³ΡΠ°Π½ΠΈΡΠ°ΠΌ ΡΠ»ΠΎΠ² ΠΈΠ»ΠΈ Π΄Π²ΠΎΠΉΠ½ΡΡ ΡΠ»ΠΎΠ² Π΄Π»Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Π΄ΠΎΡΡΡΠΏΠ°
ΠΡΠΈΠΌΠ΅Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°:
ALIGN 4 ; ΠΡΡΠ°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ Π³ΡΠ°Π½ΠΈΡΠ΅ Π΄Π²ΠΎΠΉΠ½ΠΎΠ³ΠΎ ΡΠ»ΠΎΠ²Π°
DATA_START:
COUNTER DD 0 ; Π‘ΡΠ΅ΡΡΠΈΠΊ (4 Π±Π°ΠΉΡΠ°)
FLAGS DB 16 DUP (0) ; Π€Π»Π°Π³ΠΈ (16 Π±Π°ΠΉΡ)
BUFFER DB 1024 DUP (?) ; ΠΠΎΠ»ΡΡΠΎΠΉ Π½Π΅ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Π±ΡΡΠ΅Ρ
DATA_END:
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅: Π²Π°ΠΆΠ½ΠΎΡΡΡ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ DB ΠΈ DUP Π² Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅
ΠΠΈΡΠ΅ΠΊΡΠΈΠ²Π° DB ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ DUP ΡΠ²Π»ΡΡΡΡΡ ΡΡΠ½Π΄Π°ΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΡΠΌΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ Π² Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ½ΠΎΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Π΄Π°Π½Π½ΡΠΌΠΈ. ΠΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΏΠ°ΠΌΡΡΡΡ, ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ.
ΠΠ»ΡΡΠ΅Π²ΡΠ΅ ΠΌΠΎΠΌΠ΅Π½ΡΡ Π΄Π»Ρ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΡ:
- DB Π²ΡΠ΅Π³Π΄Π° ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Ρ Π±Π°ΠΉΡΠ°ΠΌΠΈ
- DUP ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π±ΠΎΠ»ΡΡΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Ρ
- ΠΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ DB ΠΈ DUP ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π³ΠΈΠ±ΠΊΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π΄Π»Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π΄Π°Π½Π½ΡΡ
- ΠΠ½ΠΈΠΌΠ°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠ»Π΅Π΄ΠΈΡΠ΅ Π·Π° ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ Π΄Π°Π½Π½ΡΡ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠΌ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ
- ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ DB ΠΈ DUP Π΄Π»Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ
ΠΠ»ΡΠ±ΠΎΠΊΠΎΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡΡΠΈΡ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ Π²Π°ΠΆΠ½ΡΠΌ ΡΠ°Π³ΠΎΠΌ Π½Π° ΠΏΡΡΠΈ ΠΊ ΠΌΠ°ΡΡΠ΅ΡΡΡΠ²Ρ Π² Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ½ΠΎΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ.

Π’ΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ Π² Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅
Β
ΠΠ°Π½Π½ΡΠ΅ β ΡΠΈΡΠ»Π° ΠΈ Π·Π°ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΎΠΏΠ΅ΡΠ°Π½Π΄ΠΎΠ² ΠΊΠΎΠΌΠ°Π½Π΄.
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ
Π² Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅
Π’ΠΈΠΏ | ΠΠΈΡΠ΅ΠΊΡΠΈΠ²Π° | ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π±Π°ΠΉΡ |
ΠΠ°ΠΉΡ | DB | 1 |
Π‘Π»ΠΎΠ²ΠΎ | DW | 2 |
ΠΠ²ΠΎΠΉΠ½ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ | DD | 4 |
8 Π±Π°ΠΉΡ | DQ | 8 |
10 Π±Π°ΠΉΡ | DT | 10 |
ΠΠ°Π½Π½ΡΠ΅, ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΠΌΡΠ΅ Π²ΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½ΠΎΠΉ, ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΡ Π½Π° 4 Π³ΡΡΠΏΠΏΡ:
- ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅;
- Π²Π΅ΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠ΅.
- ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠ΅;
- Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅;
Π¦Π΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅
Π¦Π΅Π»ΡΠ΅ ΡΠΈΡΠ»Π° Π² Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ Π² 1-Π±Π°ΠΉΡΠ½ΠΎΠΉ, 2-Π±Π°ΠΉΡΠ½ΠΎΠΉ, 4-Π±Π°ΠΉΡΠ½ΠΎΠΉ ΠΈΠ»ΠΈ 8-Π±Π°ΠΉΡΠ½ΠΎΠΉ ΡΠΎΡΠΌΠ΅. Π¦Π΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΌΠΎΠ³ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡΡΡ Π² Π·Π½Π°ΠΊΠΎΠ²ΠΎΠΉ ΠΈ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΠΎΠΉ ΡΠΎΡΠΌΠ΅.
ΠΠ΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠ΅ ΡΠ΅Π»ΡΠ΅ ΡΠΈΡΠ»Π° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡΡΡ Π² Π²ΠΈΠ΄Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π±ΠΈΡΠΎΠ² Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ ΠΎΡ 0 Π΄ΠΎ 2n-1, Π³Π΄Π΅ n- ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΡΡ
Π±ΠΈΡΠΎΠ².
ΠΠ½Π°ΠΊΠΎΠ²ΡΠ΅ ΡΠ΅Π»ΡΠ΅ ΡΠΈΡΠ»Π° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡΡΡ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ -2n-1 β¦ +2n-1-1. ΠΡΠΈ ΡΡΠΎΠΌ ΡΡΠ°ΡΡΠΈΠΉ Π±ΠΈΡ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΎΡΠ²ΠΎΠ΄ΠΈΡΡΡ ΠΏΠΎΠ΄ Π·Π½Π°ΠΊ ΡΠΈΡΠ»Π° (0 ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΠΌΡ ΡΠΈΡΠ»Ρ, 1 β ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠΌΡ).
ΠΠ΅ΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅
ΠΠ΅ΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ 4, 8 ΠΈΠ»ΠΈ 10-Π±Π°ΠΉΡΠ½ΡΠΌΠΈ ΠΈ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΡΠΎΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠΌ.
ΠΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π΄Π°Π½Π½ΡΠ΅
ΠΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΡΠΎΠ±ΠΎΠΉ Π±ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΈ ΠΌΠΎΠ³ΡΡ Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡΡΡ Π² Π²ΠΈΠ΄Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π±ΠΈΡΠΎΠ². ΠΠ°ΠΆΠ΄ΡΠΉ Π±ΠΈΡ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 0 (ΠΠΠΠ¬) ΠΈΠ»ΠΈ 1 (ΠΠ‘Π’ΠΠΠ). ΠΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΌΠΎΠ³ΡΡ Π½Π°ΡΠΈΠ½Π°ΡΡΡΡ Ρ Π»ΡΠ±ΠΎΠΉ ΠΏΠΎΠ·ΠΈΡΠΈΠΈ Π² Π±Π°ΠΉΡΠ΅.
Π‘ΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅
Π‘ΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π·Π°Π΄Π°ΡΡΡΡ Π² ΠΊΠΎΠ΄Π°Ρ ΠΈ ΠΈΠΌΠ΅ΡΡ Π΄Π»ΠΈΠ½Ρ, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, 1 Π±Π°ΠΉΡ (Π΄Π»Ρ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠΈ ASCII) ΠΈΠ»ΠΈ 2 Π±Π°ΠΉΡΠ° (Π΄Π»Ρ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠΈ Unicode)Β .
Π§ΠΈΡΠ»Π° Π² Π΄Π²ΠΎΠΈΡΠ½ΠΎ-Π΄Π΅ΡΡΡΠΈΡΠ½ΠΎΠΌ ΡΠΎΡΠΌΠ°ΡΠ΅
Π Π΄Π²ΠΎΠΈΡΠ½ΠΎ-Π΄Π΅ΡΡΡΠΈΡΠ½ΠΎΠΌ ΠΊΠΎΠ΄Π΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡΡΡ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠ΅ ΡΠ΅Π»ΡΠ΅ ΡΠΈΡΠ»Π°, ΠΊΠΎΠ΄ΠΈΡΡΡΡΠΈΠ΅ ΡΠΈΡΡΡ ΠΎΡ 0 Π΄ΠΎ 9. Π§ΠΈΡΠ»Π° Π² Π΄Π²ΠΎΠΈΡΠ½ΠΎ-Π΄Π΅ΡΡΡΠΈΡΠ½ΠΎΠΌ ΡΠΎΡΠΌΠ°ΡΠ΅ ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· Π΄Π²ΡΡ Π²ΠΈΠ΄ΠΎΠ²:
- ΡΠΏΠ°ΠΊΠΎΠ²Π°Π½Π½ΠΎΠΌ;
- Π½Π΅ΡΠΏΠ°ΠΊΠΎΠ²Π°Π½Π½ΠΎΠΌ.
Π Π½Π΅ΡΠΏΠ°ΠΊΠΎΠ²Π°Π½Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π±Π°ΠΉΡΠ΅ Ρ
ΡΠ°Π½ΠΈΡΡΡ ΠΎΠ΄Π½Π° ΡΠΈΡΡΠ°, ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½Π½Π°Ρ Π² ΠΌΠ»Π°Π΄ΡΠ΅ΠΉ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π΅ Π±Π°ΠΉΡΠ° (Π±ΠΈΡΡ 3β¦0).
Π£ΠΏΠ°ΠΊΠΎΠ²Π°Π½Π½ΡΠΉ Π²ΠΈΠ΄ Π΄ΠΎΠΏΡΡΠΊΠ°Π΅Ρ Ρ
ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π΄Π²ΡΡ
Π΄Π΅ΡΡΡΠΈΡΠ½ΡΡ
ΡΠΈΡΡ Π² ΠΎΠ΄Π½ΠΎΠΌ Π±Π°ΠΉΡΠ΅, ΠΏΡΠΈΡΠ΅ΠΌ ΡΡΠ°ΡΡΠ°Ρ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π° Π±Π°ΠΉΡΠ° ΠΎΡΠ²ΠΎΠ΄ΠΈΡΡΡ ΠΏΠΎΠ΄ ΡΡΠ°ΡΡΠΈΠΉ ΡΠ°Π·ΡΡΠ΄.
Π§ΠΈΡΠ»ΠΎΠ²ΡΠ΅ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ
Π§ΠΈΡΠ»ΠΎΠ²ΡΠ΅ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄Π»Ρ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΡ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΎΠΏΠ΅ΡΠ°Π½Π΄ΠΎΠ² ΠΈ Π°Π΄ΡΠ΅ΡΠΎΠ² ΠΏΠ°ΠΌΡΡΠΈ. ΠΠ»Ρ ΡΠΈΡΠ»ΠΎΠ²ΡΡ ΠΊΠΎΠ½ΡΡΠ°Π½Ρ Π² ΠΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅ ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠΈΡΠ»ΠΎΠ²ΡΠ΅ ΡΠΎΡΠΌΠ°ΡΡ.
ΠΠ΅ΡΡΡΠΈΡΠ½ΡΠΉ ΡΠΎΡΠΌΠ°Ρ β Π΄ΠΎΠΏΡΡΠΊΠ°Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π΅ΡΡΡΠΈΡΠ½ΡΡ ΡΠΈΡΡ ΠΎΡ 0 Π΄ΠΎ 9 ΠΈ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°Π΅ΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ Π±ΡΠΊΠ²ΠΎΠΉ d, ΠΊΠΎΡΠΎΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, 125 ΠΈΠ»ΠΈ 125d. ΠΡΡΠ΅ΠΌΠ±Π»Π΅Ρ ΡΠ°ΠΌ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π² Π΄Π΅ΡΡΡΠΈΡΠ½ΠΎΠΌ ΡΠΎΡΠΌΠ°ΡΠ΅ Π² ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΡΠΉ ΡΠ΅ΡΡΠ½Π°Π΄ΡΠ°ΡΠ΅ΡΠΈΡΠ½ΡΠΉ ΠΊΠΎΠ΄ ΠΈ Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅Ρ Π±Π°ΠΉΡΡ Π² ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π΄Π»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΡΡΠΌΠΎΠΉ Π°Π΄ΡΠ΅ΡΠ°ΡΠΈΠΈ.
a DB 12
Π¨Π΅ΡΡΠ½Π°Π΄ΡΠ°ΡΠ΅ΡΠΈΡΠ½ΡΠΉ ΡΠΎΡΠΌΠ°Ρ β Π΄ΠΎΠΏΡΡΠΊΠ°Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΡΡΠ½Π°Π΄ΡΠ°ΡΠ΅ΡΠΈΡΠ½ΡΡ
ΡΠΈΡΡ ΠΎΡ 0 Π΄ΠΎ F ΠΈ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°Π΅ΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ Π±ΡΠΊΠ²ΠΎΠΉ h, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ 7Dh. Π’Π°ΠΊ ΠΊΠ°ΠΊ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅Ρ ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ, ΡΡΠΎ Ρ Π±ΡΠΊΠ²Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΡΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ, ΡΠΎ ΠΏΠ΅ΡΠ²ΡΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠΌ ΡΠ΅ΡΡΠ½Π°Π΄ΡΠ°ΡΠ΅ΡΠΈΡΠ½ΠΎΠΉ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΡΠΈΡΡΠ° ΠΎΡ 0 Π΄ΠΎ 9. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, 0Eh.
a DB 0Ch
ΠΠ²ΠΎΠΈΡΠ½ΡΠΉ ΡΠΎΡΠΌΠ°Ρ β Π΄ΠΎΠΏΡΡΠΊΠ°Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΈΡΡ 0 ΠΈ 1 ΠΈ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°Π΅ΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ Π±ΡΠΊΠ²ΠΎΠΉ b. ΠΠ²ΠΎΠΈΡΠ½ΡΠΉ ΡΠΎΡΠΌΠ°Ρ ΠΎΠ±ΡΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ Π±ΠΎΠ»Π΅Π΅ ΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±ΠΈΡΠΎΠ²ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π² Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ (AND, OR, XOR).
a DB 00001100b
ΠΠΎΡΡΠΌΠ΅ΡΠΈΡΠ½ΡΠΉ ΡΠΎΡΠΌΠ°Ρ β Π΄ΠΎΠΏΡΡΠΊΠ°Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΈΡΡ ΠΎΡ 0 Π΄ΠΎ 7 ΠΈ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°Π΅ΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ Π±ΡΠΊΠ²ΠΎΠΉ q ΠΈΠ»ΠΈ o, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, 253q.
a DB 14q
ΠΠ°ΡΡΠΈΠ²Ρ ΠΈ ΡΠ΅ΠΏΠΎΡΠΊΠΈ
ΠΠ°ΡΡΠΈΠ²ΠΎΠΌ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΠΉ Π½Π°Π±ΠΎΡ ΠΎΠ΄Π½ΠΎΡΠΈΠΏΠ½ΡΡ Π΄Π°Π½Π½ΡΡ , ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠΌ.
Π¦Π΅ΠΏΠΎΡΠΊΠ° β ΠΌΠ°ΡΡΠΈΠ², ΠΈΠΌΠ΅ΡΡΠΈΠΉ ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Π½Π°Π±ΠΎΡ Π½Π°ΡΠ°Π»ΡΠ½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ.
ΠΡΠΈΠΌΠ΅ΡΡ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ΅ΠΏΠΎΡΠ΅ΠΊ
M1 DD 0,1,2,3,4,5,6,7,8,9
M2 DD 0,1,2,3
Β Β DD 4,5,6,7
Β Β DD 8,9
ΠΠ°ΠΆΠ΄Π°Ρ ΠΈΠ· Π·Π°ΠΏΠΈΡΠ΅ΠΉ Π²ΡΠ΄Π΅Π»ΡΠ΅Ρ Π΄Π΅ΡΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΡ 4-Π±Π°ΠΉΡΠ½ΡΡ ΡΡΠ΅Π΅ΠΊ ΠΏΠ°ΠΌΡΡΠΈ ΠΈ Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅Ρ Π² Π½ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9.
ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ M1 ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π°ΡΠ°Π»Π° ΡΡΠΎΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ Π² ΡΠ΅Π³ΠΌΠ΅Π½ΡΠ΅ Π΄Π°Π½Π½ΡΡ .DATA.
ΠΠ»Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π²ΡΠ΅Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π° ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ DUP:
ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π’ΠΈΠΏ Π Π°Π·ΠΌΠ΅Ρ DUP (ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅)
ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ β ΠΈΠΌΡ ΠΌΠ°ΡΡΠΈΠ²Π°;
Π’ΠΈΠΏ β ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π±Π°ΠΉΡ, Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΠΎΠ΅ ΠΎΠ΄Π½ΠΈΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠΌ;
Π Π°Π·ΠΌΠ΅Ρ β ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ°, Ρ
Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΠ·ΡΡΡΠ°Ρ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π² ΠΌΠ°ΡΡΠΈΠ²Π΅
ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ β Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ².
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ
a DD 20 DUP (0)
ΠΎΠΏΠΈΡΡΠ²Π°Π΅Ρ ΠΌΠ°ΡΡΠΈΠ² a ΠΈΠ· 20 ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ², Π½Π°ΡΠ°Π»ΡΠ½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠΎΡΠΎΡΡΡ ΡΠ°Π²Π½Ρ 0.
ΠΡΠ»ΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²ΡΠ΄Π΅Π»ΠΈΡΡ ΠΏΠ°ΠΌΡΡΡ, Π½ΠΎ Π½Π΅ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π΅Π΅, Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠΎΠ»Ρ ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π·Π½Π°ΠΊ ?. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ,
b DD 20 DUP(?)
Π‘ΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠ΅ ΡΡΡΠΎΠΊΠΈ
Π‘ΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠ΅ ΡΡΡΠΎΠΊΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΡΠΎΠ±ΠΎΠΉ Π½Π°Π±ΠΎΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π΄Π»Ρ Π²ΡΠ²ΠΎΠ΄Π° Π½Π° ΡΠΊΡΠ°Π½. Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΡΡΠΎΠΊΠΈ ΠΎΡΠΌΠ΅ΡΠ°Π΅ΡΡΡ
- ΠΎΠ΄ΠΈΠ½ΠΎΡΠ½ΡΠΌΠΈ ΠΊΠ°Π²ΡΡΠΊΠ°ΠΌΠΈ Β», Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, βΡΡΡΠΎΠΊΠ°β
- Π΄Π²ΠΎΠΉΠ½ΡΠΌΠΈ ΠΊΠ°Π²ΡΡΠΊΠ°ΠΌΠΈ «», Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Β«ΡΡΡΠΎΠΊΠ°Β»
Π‘ΠΈΠΌΠ²ΠΎΠ»ΡΠ½Π°Ρ ΡΡΡΠΎΠΊΠ° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²ΠΎΠΉ DB, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Π° Π² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΡΠ»Π΅Π²Π° Π½Π°ΠΏΡΠ°Π²ΠΎ.
Π‘ΠΈΠΌΠ²ΠΎΠ»ΡΠ½Π°Ρ ΡΡΡΠΎΠΊΠ°, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½Π°Ρ Π΄Π»Ρ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ²ΠΎΠ΄Π°, Π΄ΠΎΠ»ΠΆΠ½Π° Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°ΡΡΡΡ Π½ΡΠ»Ρ-ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠΌ β\0β Ρ ΠΊΠΎΠ΄ΠΎΠΌ, ΡΠ°Π²Π½ΡΠΌ 0.
Str DB βΠΡΠΈΠ²Π΅Ρ Π²ΡΠ΅ΠΌ!β, 0
ΠΠ»Ρ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Π° ΡΡΡΠΎΠΊΠΈ ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠΈΠΌΠ²ΠΎΠ»Ρ
- Π²ΠΎΠ·Π²ΡΠ°Ρ ΠΊΠ°ΡΠ΅ΡΠΊΠΈ Ρ ΠΊΠΎΠ΄ΠΎΠΌ 13 (0Dh)
- ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ ΡΡΡΠΎΠΊΠΈ Ρ ΠΊΠΎΠ΄ΠΎΠΌ 10 (0Ah).
Stroka DB Β«ΠΡΠΈΠ²Π΅ΡΒ», 13, 10, 0
ΠΠ°Π·Π°Π΄
ΠΠ°Π·Π°Π΄: Π―Π·ΡΠΊ Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ°
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠΈΠΏΠΎΠ² Π΄Π°Π½Π½ΡΡ Π² ΠΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅ Intel
ΠΠ»Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠΈΠΏΠΎΠ² Π΄Π°Π½Π½ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΠ°ΠΌΡΡΠΈ:
DB β 1 Π±Π°ΠΉΡ β 8 Π±ΠΈΡ,
DW β 2 Π±Π°ΠΉΡΠ° β 16 Π±ΠΈΡ,
DD β 4 Π±Π°ΠΉΡΠ° β 32 Π±ΠΈΡΠ°,
DQ β 8 Π±Π°ΠΉΡ β 64 Π±ΠΈΡΠ°,
DT β 10 Π±Π°ΠΉΡ β 80 Π±ΠΈΡ.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅. ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π°ΠΌΠΈ ΡΠ²Π»ΡΡΡΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ, ΠΎΠΏΠΈΡΡΠ²Π°ΡΡΠΈΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π΄Π»ΠΈΠ½ΠΎΠΉ 6 Π±Π°ΠΉΡ (Π΄Π»Ρ Π΄Π°Π»ΡΠ½Π΅Π³ΠΎ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ β 2 Π±Π°ΠΉΡΠ° ΡΠ΅Π»Π΅ΠΊΡΠΎΡ ΠΈ 4 Π±Π°ΠΉΡΠ° ΡΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅):
DF β 6 Π±Π°ΠΉΡ β 48 Π±ΠΈΡ,
DP β 6 Π±Π°ΠΉΡ β 48 Π±ΠΈΡ,
ΠΡΠΈΠΌΠ΅ΡΡ:
The_byte DB 5 ; 0 … 255 (28-1)
The_word DW 3000 ; 0 … 65 535 (216-1)
The_dword DD 12345678 ; 0 … 4 294 967 295 (2 32-1)
The_qword DQ 1122334455667788 ; 0 … (264-1)
The_ptr DP 112233445566 ; 0 … (248-1)
ΠΡΠΈ ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ
ΠΏΠ°ΠΌΡΡΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Π²Π°ΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΠΎΠ΅
ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π΄Π°Π½Π½ΡΡ
, ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΡ
ΠΈΡ
Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ Π½Π΅ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΡ,
ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Ρ ΠΈΠΌΡ ΠΈΠ»ΠΈ Π½Π΅ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Ρ.
ΠΠ»Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π² ΠΊΠΎΠ΄Π΅ ASCII
ΠΡΡΠ΅ΠΌΠ±Π»Π΅Ρ Π΄ΠΎΠΏΡΡΠΊΠ°Π΅Ρ Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ
Π±Π°ΠΉΡ Π² ΠΊΠ°Π²ΡΡΠΊΠ°Ρ
.
ΠΡΠΈΠΌΠ΅ΡΡ:
DB ? ; ΠΎΠ΄ΠΈΠ½ Π±Π°ΠΉΡ Π±Π΅Π· ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΈ ΠΈΠΌΠ΅Π½ΠΈ
DB 5, 0Fh ; Π΄Π²Π° Π±Π°ΠΉΡΠ° Π±Π΅Π· ΠΈΠΌΠ΅Π½ΠΈ Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ
DB 5,?,7 ; ΡΡΠΈ Π±Π°ΠΉΡΠ°, Π΄Π²Π° Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ, ΠΎΠ΄ΠΈΠ½ β Π±Π΅Π·
Five_bytes DB 0,0,0,0,0 ; ΠΎΠ±Π»Π°ΡΡΡ 5 Π±Π°ΠΉΡ, Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π²ΡΠ΅Ρ Π½ΡΠ»Π΅Π²ΡΠ΅
The_ptr DB 1122334455 ;
0 … (2
Str DB βΠ‘ΡΡΠΎΠΊΠ° ΡΠ΅ΠΊΡΡΠ°β ; 13 Π±Π°ΠΉΡ
DB β5β ; ΠΎΠ΄ΠΈΠ½ Π±Π°ΠΉΡ, ΡΠ°Π²Π½ΡΠΉ 53 ΠΈΠ»ΠΈ 35h ΠΈΠ»ΠΈ β5β
DB 5 ; ΠΎΠ΄ΠΈΠ½ Π±Π°ΠΉΡ, ΡΠ°Π²Π½ΡΠΉ 5
ΠΡΠΈ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΠ°ΠΌΡΡΠΈ ΠΏΠΎΠ²ΡΠΎΡΡΡΡΠΈΠΌΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ dup:
ΠΡΠΈΠΌΠ΅ΡΡ:
Buffer DB 200h dup (0) ; Π±ΡΡΠ΅Ρ 512 Π±Π°ΠΉΡ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½ Π½ΡΠ»ΡΠΌΠΈ.
String_buf DB 78 dup (β β) ; Π±ΡΡΠ΅Ρ ΠΏΡΠΈΠ΅ΠΌΠ° ΡΡΡΠΎΠΊΠΈ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ ΠΏΡΠΎΠ±Π΅Π»Π°ΠΌΠΈ.
Π ΠΎΠ΄Π½ΠΈΠΌ ΠΈ ΡΠ΅ΠΌ ΠΆΠ΅
ΡΡΠ΅ΠΉΠΊΠ°ΠΌ ΠΏΠ°ΠΌΡΡΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ ΠΊΠ°ΠΊ ΠΊ
Π΄Π°Π½Π½ΡΠΌ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ
ΡΠΈΠΏΠΎΠ². ΠΠ΄ΠΈΠ½ ΠΈΠ· ΡΠΏΠΎΡΠΎΠ±ΠΎΠ²
ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠ°ΠΊΠΈΡ
ΡΡΠ΅Π΅ΠΊ ΠΏΠ°ΠΌΡΡΠΈ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ
ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ LABEL.
ΠΡΠΈΠΌΠ΅ΡΡ:
Bytes label byte
Words label word
DB 0,1,2,3,4,5 ; ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Ρ ΡΠ΅ΡΡΡ Π±Π°ΠΉΡ ΠΈΠ»ΠΈ ΡΡΠΈ ΡΠ»ΠΎΠ²Π°
; ΡΠ»ΠΎΠ²Π° ΡΠ°Π²Π½Ρ: 0100h, 0302h, 0504h
ΠΠ±ΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΊ ΡΡΠ΅ΠΉΠΊΠ°ΠΌ ΠΊΠ°ΠΊ ΠΊ Π΄Π°Π½Π½ΡΠΌ Π½ΡΠΆΠ½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΈ Π±Π΅Π· ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΈΡ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π΅ LABEL, Π΅ΡΠ»ΠΈ ΡΠ²Π½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ PTR.
ΠΡΠΈΠΌΠ΅ΡΡ:
b_or_w db 1,2,3,4 ; Π΄Π°Π½Π½ΡΠ΅
β¦
mov al, byte ptr b_or_w ; al := 01
mov ax, word ptr b_or_w ; ax := 0201h
mov al, byte ptr b_or_w+3 ; al := 04
mov ax, word ptr b_or_w+2 ; ax := 0403h
w_or_b dw 0201h,0403h ; ΡΠ΅ ΠΆΠ΅ Π΄Π°Π½Π½ΡΠ΅
β¦
mov al,byte ptr w_or_b+3 ; al := 04
mov ax,w_or_b+2 ; ax := 0403h
ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½
ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π° ΡΠ·ΡΠΊΠ΅ ΠΡΡΠ΅ΠΌΠ±Π»Π΅Ρ Ρ
ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ ΡΠΈΠΏΠ°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ
, ΠΎΠΏΠΈΡΠ°Π½Π½ΡΠΌΠΈ
Π² ΡΠ΅Π³ΠΌΠ΅Π½ΡΠ΅ Π΄Π°Π½Π½ΡΡ
. Π‘Π΅Π³ΠΌΠ΅Π½Ρ Π΄Π°Π½Π½ΡΡ
Π²ΡΠ΄Π΅Π»Π΅Π½
ΠΏΠΎΠ»ΡΠΆΠΈΡΠ½ΡΠΌ ΡΡΠΈΡΡΠΎΠΌ.
ΠΠ° ΠΏΠ΅ΡΠ²ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅ Π»ΠΈΡΡΠΈΠ½Π³Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΉ Π½ΠΈΠΆΠ΅, ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΡΡΠ°Π½ΡΠ»ΡΡΠΈΠΈ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΠΌΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΠΏΠΈΡΠ°Π½Π½ΡΠ΅ Π² ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠΌ ΠΌΠΎΠ΄ΡΠ»Π΅ Π΄Π°Π½Π½ΡΠ΅ Π²ΡΠ΄Π΅Π»Π΅Π½Ρ.
Turbo Assembler Version 2.51 03/07/00 12:25:41 Page 1
prog.ASM
1 name prog
2
3 0000 .model small
4
5 0000 .data
6 ;———————
7 0000 42 65 67 69 6E 20 6F+ db ‘Begin of DATAseg’
8 66 20 44 41 54 41 73+
9 65 67
10
11 0010 12 x1 db 12h
12 0011 1234 x2 dw 1234h
13 0013 12345678 x3 dd 12345678h
14 0017 0123456789ABCDEF x4 dq 0123456789ABCDEFh
15 001F 112233445566778899AA x5 dt 112233445566778899AAh
16 0029 112233445566 x6 dp 112233445566h
17 002F AABBCCDDEEFF x7 df 0AABBCCDDEEFFh
18
19 0035 53 74 72 69 6E 67 20+ s1 db ‘String 1’
20 31
21 003D 2A db ‘*’
22 003E ?? db ?
23 003F ?? db ?
24
25 0040 10*(02 03) b1 db 10h dup (2,3)
26
27 0060 . code
28 ;———————
29 0000 main proc far
30 0000 start:
31 0000 B8 0000s mov ax,@data
32 0003 8E D8 mov ds,ax
33
34 0005 exit:
35 0005 B8 4C00 mov ax,4C00h ; exit
36 0008 CD 21 int 21h
37
38 000A main endp
39 ;———————
40 end start
ΠΠ° Π²ΡΠΎΡΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅ Π»ΠΈΡΡΠΈΠ½Π³Π° ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π° ΡΠ°Π±Π»ΠΈΡΠ° ΡΠΈΠΌΠ²ΠΎΠ»ΠΈΡΠ΅ΡΠΊΠΈΡ ΠΈΠΌΠ΅Π½ Ρ ΡΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ ΠΈΡ Π°Π΄ΡΠ΅ΡΠΎΠ². Π’Π°ΠΊ, Π°Π΄ΡΠ΅Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ x4 ΡΠ°Π²Π΅Π½ 0017h, Ρ. Π΅. Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² 23-Π΅ΠΉ ΡΡΠ΅ΠΉΠΊΠ΅ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½Π°ΡΠ°Π»Π° ΡΠ΅Π³ΠΌΠ΅Π½ΡΠ° Π΄Π°Π½Π½ΡΡ , ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² Π³ΡΡΠΏΠΏΠ΅ DGROUP.
Turbo Assembler Version 2.51 03/07/00 12:25:41 Page 2
Symbol Table
Symbol Name Type Value
??DATE Text «03/07/00»
??FILENAME Text «prog «
??TIME Text «12:25:41»
??VERSION Number 0205
@CODE Text _TEXT
@CODESIZE Text 0
@CPU Text 0101H
@CURSEG Text _TEXT
@DATA Text DGROUP
@DATASIZE Text 0
@FILENAME Text PROG
@MODEL Text 2
@WORDSIZE Text 2
B1 Byte DGROUP:0040
EXIT Near _TEXT:0005
MAIN Far _TEXT:0000
S1 Byte DGROUP:0035
START Near _TEXT:0000
X1 Byte DGROUP:0010
X2 Word DGROUP:0011
X3 Dword DGROUP:0013
X4 Qword DGROUP:0017
X5 Tbyte DGROUP:001F
X6 Pword DGROUP:0029
X7 Pword DGROUP:002F
Groups & Segments Bit Size Align Combine Class
DGROUP Group
_DATA 16 0060 Word Public DATA
_TEXT 16 000A Word Public CODE
ΠΠΈΠ΄ ΠΌΠΎΠ΄ΡΠ»Ρ Π²
ΠΎΡΠ»Π°Π΄ΡΠΈΠΊΠ΅ AFD ΠΏΠΎΠΊΠ°Π·Π°Π½ Π½Π° ΡΠΈΡ. 1.
Π ΡΠ΄Π΅Π»Π΅Π½Π½Π°Ρ Π²Π½ΠΈΠ·Ρ ΠΎΠ±Π»Π°ΡΡΡ β ΡΡΠΎ ΡΠ΅Π³ΠΌΠ΅Π½Ρ Π΄Π°Π½Π½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΠ΄ΡΠ΅ΡΠ° Π΄Π°Π½Π½ΡΡ ΡΠΊΠ»Π°Π΄ΡΠ²Π°ΡΡΡΡ ΠΈΠ· Π΄Π²ΡΡ ΡΠ΅ΡΡΠ½Π°Π΄ΡΠ°ΡΠ΅ΡΠΈΡΠ½ΡΡ ΡΠΈΡΠ΅Π»: Π² Π»Π΅Π²ΠΎΠΌ ΡΡΠΎΠ»Π±ΡΠ΅ ΠΈ Π²Π΅ΡΡ Π½Π΅ΠΉ ΡΡΡΠΎΠΊΠ΅ Π½Π°Π΄ Π΄Π°Π½Π½ΡΠΌΠΈ. Π’Π°ΠΊ, Π½Π°ΡΠ°Π»ΡΠ½ΡΠΉ Π±Π°ΠΉΡ ΠΈΠΌΠ΅Π΅Ρ Π°Π΄ΡΠ΅Ρ 0000h, Π° Π΅Π³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π²Π½ΠΎ 42h, ΠΈΠ»ΠΈ βBβ Π»Π°Ρ., ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠΈΠΌΠ²ΠΎΠ» ΡΡΡΠΎΠΊΠΈ String1 ΠΈΠΌΠ΅Π΅Ρ Π°Π΄ΡΠ΅Ρ 0030h + 5h = 0035h, Π° Π΅Π³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π²Π½ΠΎ 53h ΠΈΠ»ΠΈ βSβ Π»Π°Ρ. Π‘ΠΏΡΠ°Π²Π° ΠΎΡ ΡΠ΅ΡΡΠ½Π°Π΄ΡΠ°ΡΠ΅ΡΠΈΡΠ½ΠΎΠ³ΠΎ Π΄Π°ΠΌΠΏΠ° ΠΏΠ°ΠΌΡΡΠΈ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΎ ASCII-ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΡΡΠΈΡ Π΄Π°Π½Π½ΡΡ (ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΠΎΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅, ΡΠ΄ΠΎΠ±Π½ΠΎΠ΅ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΡ ΠΊΠΎΠ½ΡΡΠ°Π½Ρ).
Π ΠΈΡΡΠ½ΠΎΠΊ 1
Π‘
Π΅Π³ΠΌΠ΅Π½Ρ
Π΄Π°Π½Π½ΡΡ
Π² ΠΌΠΎΠ΄ΡΠ»Π΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ Π½Π° ΡΠΈΡ.2. ΠΠΎΠΊΠ°Π·Π°Π½Ρ
Π·Π°ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ Π² ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠΌ ΠΌΠΎΠ΄ΡΠ»Π΅
ΠΎΠ±Π»Π°ΡΡΠΈ Π΄Π°Π½Π½ΡΡ
. ΠΠ±ΡΠ°ΡΠ½ΠΎΠ΅ ΠΏΠΎ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ
Ρ Π·Π°ΠΏΠΈΡΡΡ Π² ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠΌ ΠΌΠΎΠ΄ΡΠ»Π΅ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅
Π±Π°ΠΉΡΠΎΠ² β Ρ
Π°ΡΠ°ΠΊΡΠ΅ΡΠ½ΡΠΉ ΡΡΡΠ΅ΠΊΡ, ΡΠ²ΡΠ·Π°Π½Π½ΡΠΉ
Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΡΡΠ΅Π΅ΠΊ ΠΏΠ°ΠΌΡΡΠΈ Π² ΠΎΠΊΠ½Π΅
ΠΎΡΠ»Π°Π΄ΡΠΈΠΊΠ° ΡΠ»Π΅Π²Π° Π½Π°ΠΏΡΠ°Π²ΠΎ (ΠΎΡ ΠΌΠ»Π°Π΄ΡΠΈΡ
ΠΊ
ΡΡΠ°ΡΡΠΈΠΌ). Π’Π°ΠΊ, Π΄Π²ΠΎΠΉΠ½ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ x3,
Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½ΠΎ
ΡΠ΅ΡΡΠ½Π°Π΄ΡΠ°ΡΠ΅ΡΠΈΡΠ½ΠΎΠΉ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠΎΠΉ 12345678h,
Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ Π±Π°ΠΉΡΡ Ρ Π°Π΄ΡΠ΅ΡΠ°ΠΌΠΈ 13, 14, 15, 16. ΠΡΠΈ
ΡΡΠΎΠΌ Π΄Π²Π΅ ΠΌΠ»Π°Π΄ΡΠΈΠ΅ ΡΠΈΡΡΡ ΡΠΈΡΠ»Π° (7 ΠΈ 8)
Π·Π°Π½ΠΈΠΌΠ°ΡΡ ΠΌΠ»Π°Π΄ΡΠΈΠΉ Π±Π°ΠΉΡ Ρ Π°Π΄ΡΠ΅ΡΠΎΠΌ 13,
ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π΄Π²Π΅ ΡΠΈΡΡΡ (5 ΠΈ 6) Π·Π°Π½ΠΈΠΌΠ°ΡΡ
ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ Π±Π°ΠΉΡ Ρ Π°Π΄ΡΠ΅ΡΠΎΠΌ 14 ΠΈ Ρ.Π΄. Π‘ΡΡΠΎΠΊΠ°
ΡΠ΅ΠΊΡΡΠ° Π² ΠΎΠΊΠ½Π΅ ΠΎΡΠ»Π°Π΄ΡΠΈΠΊΠ° ΡΠΈΡΠ°Π΅ΡΡΡ ΡΠ°ΠΊ
ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Π² ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠΌ ΠΌΠΎΠ΄ΡΠ»Π΅, Ρ.ΠΊ. ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅
ΡΠ΅ΠΊΡΡΠ° Π² ΠΏΠ°ΠΌΡΡΠΈ β ΠΎΡ Π½Π°ΡΠ°Π»Π° ΡΠ΅ΠΊΡΡΠ° Π²
ΠΌΠ»Π°Π΄ΡΠΈΡ
Π°Π΄ΡΠ΅ΡΠ°Ρ
ΠΊ ΠΊΠΎΠ½ΡΡ ΡΠ΅ΠΊΡΡΠ° Π² ΡΡΠ°ΡΡΠΈΡ
Π°Π΄ΡΠ΅ΡΠ°Ρ
β ΡΠΎΠ²ΠΏΠ°Π΄Π°Π΅Ρ Ρ Π΅ΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠΌ
ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΡΠΈΡΠ°Π΅ΠΌΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠ° ΡΠ»Π΅Π²Π°
Π½Π°ΠΏΡΠ°Π²ΠΎ (ΡΠΌ. ΡΠΈΡ.1). ΠΠ°ΠΉΡΡ Ρ Π°Π΄ΡΠ΅ΡΠ°ΠΌΠΈ 3E, 3F,
Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠΎΡΠΎΡΡΡ
ΡΠ°Π²Π½Ρ Π½ΡΠ»Ρ, Π½Π΅
ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΡΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΎΠΉ. ΠΠ°ΠΉΡΡ Ρ
Π°Π΄ΡΠ΅ΡΠ°ΠΌΠΈ 40-5F Π·Π°Π½ΠΈΠΌΠ°ΡΡ ΠΎΠ±Π»Π°ΡΡΡ, Π·Π°ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° dup.
Π ΠΈΡΡΠ½ΠΎΠΊ 2
ΠΠΈΠ΄ ΠΌΠΎΠ΄ΡΠ»Ρ Π² ΠΎΡΠ»Π°Π΄ΡΠΈΠΊΠ΅ TurboDebuger 5.0 ΠΏΠΎΠΊΠ°Π·Π°Π½ Π½Π° ΡΠΈΡ.3.
Π ΠΈΡΡΠ½ΠΎΠΊ 3
Π‘Π±ΠΎΡΠΊΠ°— Π§ΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ `dup (?)` Π² TASM?
ΡΠΏΡΠΎΡΠΈΠ»
ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΎ 1 Π³ΠΎΠ΄, 9 ΠΌΠ΅ΡΡΡΠ΅Π² Π½Π°Π·Π°Π΄
ΠΡΠΎΡΠΌΠΎΡΡΠ΅Π½ΠΎ 60 ΡΡΡΡΡ ΡΠ°Π·
Π£ ΠΌΠ΅Π½Ρ Π΅ΡΡΡ ΡΡΠΎΡ ΠΊΠΎΠ΄, Π½ΠΎ Ρ Π½Π΅ Π·Π½Π°ΠΊΠΎΠΌ Ρ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠΎΠΌ.
STACK16_SIZE = 100 Ρ stack16 db STACK16_SIZE Π΄ΡΠ±Π»ΠΈΠΊΠ°Ρ (?)
Π― Π΄ΡΠΌΠ°Ρ, ΡΡΠΎ dup
ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΌΡ ΠΎΠ±ΡΡΠ²Π»ΡΠ΅ΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΠΈΠΏΠ° ΠΌΠ°ΡΡΠΈΠ², ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΡΠΎ ΡΡΠ΅ΠΊ, Π½ΠΎ Ρ Π½Π΅ ΡΠ²Π΅ΡΠ΅Π½. ΠΡΠ°ΠΊ, ΡΡΠΎ ΠΆΠ΅ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ dup
Π² TASM?
- Π² ΡΠ±ΠΎΡΠ΅
- x86
- ΡΠ°ΡΠΌ
0
STACK16_SIZE dup (?)
ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ Π΄ΡΠ±Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ
Π² ΡΠΊΠΎΠ±ΠΊΠ°Ρ
STACK16_SIZE
ΡΠ°Π·. ΠΡΠΎ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ?, ?, ?, ?,
… (100Ρ ΡΠ°Π·)
ΠΠ°Π½Π½ΡΠ΅ Π² ΡΠΊΠΎΠ±ΠΊΠ°Ρ ΡΠ²Π»ΡΡΡΡΡ «Π½Π΅ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ». Π’ΠΎ Π΅ΡΡΡ ΠΏΠ°ΠΌΡΡΡ Π²ΡΠ΄Π΅Π»ΡΠ΅ΡΡΡ, Π½ΠΎ ΠΏΡΠΈ Π·Π°Π³ΡΡΠ·ΠΊΠ΅ Π½Π΅ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ ΠΊΠ°ΠΊΠΎΠ΅-Π»ΠΈΠ±ΠΎ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅.
Π‘Π±ΠΎΡΠΊΠ° Π½Π΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΌΠ°ΡΡΠΈΠ² «ΡΠΈΠΏ». ΠΡΠ»ΠΈ ΡΡΠΎ ΡΠ°ΠΊ, ΡΡΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΠΎΡΠ»Π°Π΄ΡΠΈΠΊΠΎΠ² Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ΅ Π΄Π°Π½Π½ΡΡ
. ΠΠ΄Π½Π°ΠΊΠΎ Π² ΡΡΠΎΠΌ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ΅ ΠΊΠΎΠ΄Π° stack16
β ΡΡΠΎ ΡΠΈΠΌΠ²ΠΎΠ» Ρ Π°Π΄ΡΠ΅ΡΠΎΠΌ, Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΠΌ Π±Π»ΠΎΠΊ ΠΏΠ°ΠΌΡΡΠΈ Π±Π°ΠΉΡΠΎΠ², ΡΡΠΎ ΠΏΡΠΎΡΠΈΠ²ΠΎΡΠ΅ΡΠΈΡ Π·Π΄ΡΠ°Π²ΠΎΠΌΡ ΡΠΌΡΡΠ»Ρ ΠΈ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ ΡΡΠ°ΡΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠΌ ΡΠΎΠ½ΠΊΠΎΠΉ ΠΎΡΠΈΠ±ΠΊΠΈ. ΠΠ»Ρ ΡΡΠ΅ΠΊΠ° Π¦Π Π΅Π³ΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ ΠΊΠ°ΠΊ 16-Π±ΠΈΡΠ½ΡΠ΅ ΡΠ»ΠΎΠ²Π° (
dw
) ΠΈΠ»ΠΈ 32-Π±ΠΈΡΠ½ΡΠ΅ ΡΠ»ΠΎΠ²Π° ( dd
).
5
ΠΠ°ΡΠ½Π΅ΠΌ Ρ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ°. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ 20 DUP (0)
ΠΊΠ°ΠΊ Β«Π΄Π²Π°Π΄ΡΠ°ΡΡ Π½ΡΠ»Π΅Π²ΡΡ
Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ²Β». ΠΡΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ INPUTSTR DB 20 DUP (0)
ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΎ INPUTSTR DB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0
.
Π’Π΅ΠΏΠ΅ΡΡ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ?
ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ Β«Π½Π΅ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅Β», 20 DUP (?)
Π΄Π°ΡΡ Π²Π°ΠΌ 20 Π½Π΅ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
Π±Π°ΠΉΡΠΎΠ². Π Π² ΡΡΠΎΠΌ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, ΠΊΠΎΠ³Π΄Π° Ρ Π²Π°Ρ Π΅ΡΡΡ STACK16_SIZE DUP (?)
, Π²Ρ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ STACK16_SIZE
Π½Π΅ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
Π±Π°ΠΉΡΠΎΠ².
ΠΡΠΎΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π½Π΅ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ΅Π½ Π΄Π»Ρ TASM. MASM ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΡΠΎ; Π·Π°Π³Π»ΡΠ½ΠΈΡΠ΅ Π² ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΡΠΏΡΠ°Π²ΠΎΡΠ½ΠΈΠΊ MASM ΠΎΡ Microsoft.
?
ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, Π½Π΅ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅. DUP
ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ Π΄ΡΠ±Π»ΠΈΠΊΠ°Ρ.
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π²Ρ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΠ΅ 100h Π½Π΅ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π±Π°ΠΉΡΠΎΠ².
ΠΠ°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΠΉΡΠ΅ΡΡ ΠΈΠ»ΠΈ Π²ΠΎΠΉΠ΄ΠΈΡΠ΅ Π² ΡΠΈΡΡΠ΅ΠΌΡ
ΠΠ°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΠΉΡΠ΅ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Google
ΠΠ°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡΡΡ ΡΠ΅ΡΠ΅Π· Facebook
ΠΠ°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΠΉΡΠ΅ΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π°Π΄ΡΠ΅Ρ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΡΡΡ ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ
ΠΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ Π³ΠΎΡΡΡ
ΠΠ»Π΅ΠΊΡΡΠΎΠ½Π½Π°Ρ ΠΏΠΎΡΡΠ°
ΠΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ, Π½ΠΎ Π½Π΅ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ
ΠΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ Π³ΠΎΡΡΡ
ΠΠ»Π΅ΠΊΡΡΠΎΠ½Π½Π°Ρ ΠΏΠΎΡΡΠ°
Π’ΡΠ΅Π±ΡΠ΅ΡΡΡ, Π½ΠΎ Π½Π΅ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ
x86 16 — ΠΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ² DB ΠΈ DUP ΡΠ±ΠΎΡΠΊΠΈ 8086
ΠΠ°Π΄Π°Π²Π°ΡΡ Π²ΠΎΠΏΡΠΎΡ
ΡΠΏΡΠΎΡΠΈΠ»
ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΎ 2 Π³ΠΎΠ΄Π°, 9 ΠΌΠ΅ΡΡΡΠ΅Π² Π½Π°Π·Π°Π΄
ΠΡΠΎΡΠΌΠΎΡΡΠ΅Π½ΠΎ 14 ΡΡΡΡΡ ΡΠ°Π·
ΠΡΠ°ΠΊ, Ρ ΡΡΠΎΠ»ΠΊΠ½ΡΠ»ΡΡ Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ, ΠΊΠΎΡΠΎΡΠ°Ρ Π·Π°ΡΡΠ°Π²ΠΈΠ»Π° ΠΌΠ΅Π½Ρ ΡΡΠΎΠΌΠ½ΠΈΡΡΡΡ Π² ΠΌΠΎΠ΅ΠΌ Π±Π°Π·ΠΎΠ²ΠΎΠΌ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠΈ DB
(ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ Π±Π°ΠΉΡ) ΠΈ DUP
(Π΄ΡΠ±Π»ΠΈΠΊΠ°Ρ). ΠΠ°ΠΊ Ρ ΠΈΡ
ΠΏΠΎΠ½ΡΠ»:
-
NUM DB 34
ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ NUM ΠΈ ΠΏΡΠΈΡΠ²ΠΎΠΈΡ Π΅ΠΉ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 34. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Cchar NUM = 34;
1 -
NUM DB 34 DUP(?)
Π΄Π°ΡΡ ΠΌΠ½Π΅ ΠΌΠ°ΡΡΠΈΠ² ΠΈΠ· 34 ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ², ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ Π½Π΅ Π½Π°Π·Π½Π°ΡΠ΅Π½. -
NUM DB 3 DUP(4)
Π΄Π°ΡΡ ΠΌΠ½Π΅ ΠΌΠ°ΡΡΠΈΠ² Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ NUM Ρ 3 ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌΠΈ: 4, 4, 4.
ΠΡΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ?
Π ΠΌΠΎΠ΅ΠΌ ΡΡΠ΅Π±Π½ΠΈΠΊΠ΅ Ρ Π²ΡΡΡΠ΅ΡΠΈΠ»:
PRINT_SELECT ΠΠ 133 (?) ΠΠ 123 (?)
ΠΡΠΎ ΠΏΡΠΎΡΡΠΎ ΠΎΡΠΈΠ±ΠΊΠ° Π² ΡΡΠ΅Π±Π½ΠΈΠΊΠ΅, ΠΈΠ»ΠΈ ΡΡΠΈ Π΄Π²Π΅ ΡΡΡΠΎΡΠΊΠΈ ΠΊΠΎΠ΄Π° ΠΎΠ·Π½Π°ΡΠ°ΡΡ ΡΠΎΠ²ΡΠ΅ΠΌ Π΄ΡΡΠ³ΠΎΠ΅?
Π‘Π½ΠΎΡΠΊΠ° 1: (ΠΏΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ°): NUM = 34
Π² Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΏΠΎΡΡΠΎΡΠ½Π½ΡΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΡΠ±ΠΎΡΠΊΠΈ, Π½Π΅ Ρ
ΡΠ°Π½ΡΡΡΡΡΡ Π² ΠΏΠ°ΠΌΡΡΠΈ Π΄Π°Π½Π½ΡΡ
. Π Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ° MASM Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ
ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ°Ρ
ΠΎΠ½ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ. Π° Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ mul NUM
ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Ρ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠΌ ΠΏΠ°ΠΌΡΡΠΈ, Π° Π½Π΅ Ρ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΡΠΌ, Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ imul eax, ecx, NUM
ΠΈΠ»ΠΈ shl ax, NUM
, ΠΈΠ»ΠΈ mov ax, NUM/2
ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Ρ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΡΠΌ, Π° Π½Π΅ ΠΈΡΡΠΎΡΠ½ΠΈΠΊ ΠΏΠ°ΠΌΡΡΠΈ.