ΠΏΡΠ°ΠΈΡΡΠΎΡΠΈΡΠ°ΡΠ°
ΠΠΈΠ΄Π΅ΡΡΠΈ ΡΡΠΌ ΡΡΠ±ΠΈΡΠ΅Π» Π½Π° ΡΠ΅ΡΡΠΎ Ρ Π°ΡΠ΄Π²Π΅Ρ, Π΅Π΄Π½Π°Ρ ΠΊΡΠΏΠΈΠ² ZX Spectrum+ ΠΎΠ΄ ΠΏΡΠΎΠ΄Π°Π²Π°Ρ Π²ΠΎ ΠΠ. ΠΠΊΠ»ΡΡΠ΅Π½ΠΈ ΡΠΎ ΡΠ°ΠΌΠΈΠΎΡ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ, Π΄ΠΎΠ±ΠΈΠ² Π½Π΅ΠΊΠΎΠ»ΠΊΡ Π°ΡΠ΄ΠΈΠΎ ΠΊΠ°ΡΠ΅ΡΠΈ ΡΠΎ ΠΈΠ³ΡΠΈ (Π²ΠΎ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»Π½ΠΎΡΠΎ ΠΏΠ°ΠΊΡΠ²Π°ΡΠ΅ ΡΠΎ ΡΠΏΠ°ΡΡΡΠ²Π°), ΠΊΠ°ΠΊΠΎ ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ ΡΠ½ΠΈΠΌΠ΅Π½ΠΈ Π½Π° ΠΊΠ°ΡΠ΅ΡΠΈ Π±Π΅Π· ΠΏΠΎΡΠ΅Π±Π½ΠΈ ΠΎΠ·Π½Π°ΠΊΠΈ. ΠΠ·Π½Π΅Π½Π°Π΄ΡΠ²Π°ΡΠΊΠΈ, ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈΡΠ΅ ΠΎΠ΄ ΠΊΠ°ΡΠ΅ΡΠΈΡΠ΅ ΡΡΠ°ΡΠΈ 40 Π³ΠΎΠ΄ΠΈΠ½ΠΈ Π±Π΅Π° Π΄ΠΎΠ±ΡΠΎ ΡΠΈΡΠ»ΠΈΠ²ΠΈ ΠΈ ΠΌΠΎΠΆΠ΅Π² Π΄Π° Π³ΠΈ ΠΏΡΠ΅Π·Π΅ΠΌΠ°ΠΌ ΡΠΊΠΎΡΠΎ ΡΠΈΡΠ΅ ΠΈΠ³ΡΠΈ ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ ΠΎΠ΄ Π½ΠΈΠ².
Π‘Π΅ΠΏΠ°ΠΊ, Π½Π° Π½Π΅ΠΊΠΎΠΈ ΠΊΠ°ΡΠ΅ΡΠΈ Π½Π°ΡΠ΄ΠΎΠ² ΡΠ½ΠΈΠΌΠΊΠΈ ΠΊΠΎΠΈ ΠΎΡΠΈΠ³Π»Π΅Π΄Π½ΠΎ Π½Π΅ ΡΠ΅ Π½Π°ΠΏΡΠ°Π²Π΅Π½ΠΈ ΠΎΠ΄ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΡ ZX Spectrum. ΠΠ²ΡΡΠ΅Π»Π΅ ΡΠΎΡΠ΅ΠΌΠ° ΠΏΠΎΠΈΠ½Π°ΠΊΡ ΠΈ Π·Π° ΡΠ°Π·Π»ΠΈΠΊΠ° ΠΎΠ΄ ΡΠ½ΠΈΠΌΠΊΠΈΡΠ΅ ΠΎΠ΄ ΡΠΏΠΎΠΌΠ΅Π½Π°ΡΠΈΠΎΡ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ, Π½Π΅ Π·Π°ΠΏΠΎΡΠ½ΡΠ²Π°Π»Π΅ ΡΠΎ ΠΊΡΠ°ΡΠΎΠΊ BASIC ΠΏΠΎΠ΄ΠΈΠ³Π½ΡΠ²Π°Ρ, ΠΊΠΎΡ Π²ΠΎΠΎΠ±ΠΈΡΠ°Π΅Π½ΠΎ Π³ΠΎ ΠΈΠΌΠ° Π²ΠΎ ΡΠ½ΠΈΠΌΠΊΠΈΡΠ΅ Π½Π° ΡΠΈΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ ΠΈ ΠΈΠ³ΡΠΈ.
ΠΠ΅ΠΊΠΎΠ΅ Π²ΡΠ΅ΠΌΠ΅ ΠΎΠ²Π° ΠΌΠ΅ ΠΏΡΠΎΠ³ΠΎΠ½ΡΠ²Π°ΡΠ΅ - Π½Π°Π²ΠΈΡΡΠΈΠ½Π° ΡΠ°ΠΊΠ°Π² Π΄Π° ΠΎΡΠΊΡΠΈΡΠ°ΠΌ ΡΡΠΎ ΡΠ΅ ΠΊΡΠΈΠ΅ Π²ΠΎ Π½ΠΈΠ². ΠΠΊΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π³ΠΎ ΠΏΡΠΎΡΠΈΡΠ°ΡΠ΅ Π°ΡΠ΄ΠΈΠΎ ΡΠΈΠ³Π½Π°Π»ΠΎΡ ΠΊΠ°ΠΊΠΎ Π½ΠΈΠ·Π° ΠΎΠ΄ Π±Π°ΡΡΠΈ, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π±Π°ΡΠ°ΡΠ΅ Π·Π½Π°ΡΠΈ ΠΈΠ»ΠΈ Π±ΠΈΠ»ΠΎ ΡΡΠΎ ΡΡΠΎ ΡΠΊΠ°ΠΆΡΠ²Π° Π½Π° ΠΏΠΎΡΠ΅ΠΊΠ»ΠΎΡΠΎ Π½Π° ΡΠΈΠ³Π½Π°Π»ΠΎΡ. ΠΠ΄Π΅Π½ Π²ΠΈΠ΄ ΡΠ΅ΡΡΠΎ-Π°ΡΡ
Π΅ΠΎΠ»ΠΎΠ³ΠΈΡΠ°.
Π‘Π΅Π³Π° ΠΊΠΎΠ³Π° Π³ΠΎ ΠΏΠΎΠΌΠΈΠ½Π°Π² ΡΠ΅Π»ΠΈΠΎΡ ΠΏΠ°Ρ ΠΈ Π³ΠΈ ΠΏΠΎΠ³Π»Π΅Π΄Π½Π°Π² Π΅ΡΠΈΠΊΠ΅ΡΠΈΡΠ΅ Π½Π° ΡΠ°ΠΌΠΈΡΠ΅ ΠΊΠ°ΡΠ΅ΡΠΈ, ΡΠ΅ Π½Π°ΡΠΌΠ΅Π²Π½ΡΠ²Π°ΠΌ Π·Π°ΡΠΎΠ° ΡΡΠΎ
ΠΎΠ΄Π³ΠΎΠ²ΠΎΡΠΎΡ ΡΠ΅Π»ΠΎ Π²ΡΠ΅ΠΌΠ΅ ΠΌΠΈ Π±Π΅ΡΠ΅ ΠΏΡΠ΅Π΄ ΠΎΡΠΈ
ΠΠ° Π΅ΡΠΈΠΊΠ΅ΡΠ°ΡΠ° Π½Π° Π»Π΅Π²Π°ΡΠ° ΠΊΠ°ΡΠ΅ΡΠ° ΡΡΠΎΠΈ ΠΈΠΌΠ΅ΡΠΎ Π½Π° ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΡ TRS-80, Π° Π²Π΅Π΄Π½Π°Ρ ΠΏΠΎΠ΄ ΠΈΠΌΠ΅ΡΠΎ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΠΎΡ: βΠΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΎ ΠΎΠ΄ Radio Shack Π²ΠΎ Π‘ΠΠβ
(ΠΠΊΠΎ ΡΠ°ΠΊΠ°ΡΠ΅ Π΄Π° ΡΠ° Π·Π°Π΄ΡΠΆΠΈΡΠ΅ ΠΈΠ½ΡΡΠΈΠ³Π°ΡΠ° Π΄ΠΎ ΠΊΡΠ°Ρ, Π½Π΅ ΠΎΠ΄Π΅ΡΠ΅ ΠΏΠΎΠ΄ ΡΠΏΠΎΡΠ»Π΅Ρ)
Π‘ΠΏΠΎΡΠ΅Π΄Π±Π° Π½Π° Π°ΡΠ΄ΠΈΠΎ ΡΠΈΠ³Π½Π°Π»ΠΈ
ΠΠ°ΡΠΏΡΠ²ΠΎ Π΄Π° Π³ΠΈ Π΄ΠΈΠ³ΠΈΡΠ°Π»ΠΈΠ·ΠΈΡΠ°ΠΌΠ΅ Π°ΡΠ΄ΠΈΠΎ ΡΠ½ΠΈΠΌΠΊΠΈΡΠ΅. ΠΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠ»ΡΡΠ½Π΅ΡΠ΅ ΠΊΠ°ΠΊΠΎ Π·Π²ΡΡΠΈ:
Π ΠΊΠ°ΠΊΠΎ ΠΈ ΠΎΠ±ΠΈΡΠ½ΠΎ Π·Π²ΡΡΠΈ ΡΠ½ΠΈΠΌΠΊΠ°ΡΠ° ΠΎΠ΄ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΡ ZX Spectrum:
Π Π²ΠΎ Π΄Π²Π°ΡΠ° ΡΠ»ΡΡΠ°ΠΈ, Π½Π° ΠΏΠΎΡΠ΅ΡΠΎΠΊΠΎΡ Π½Π° ΡΠ½ΠΈΠΌΠ°ΡΠ΅ΡΠΎ ΠΏΠΎΡΡΠΎΠΈ Ρ.Π½ ΠΏΠΈΠ»ΠΎΡΡΠΊΠΈ ΡΠΎΠ½ - Π·Π²ΡΠΊ ΡΠΎ ΠΈΡΡΠ° ΡΡΠ΅ΠΊΠ²Π΅Π½ΡΠΈΡΠ° (Π½Π° ΠΏΡΠ²Π°ΡΠ° ΡΠ½ΠΈΠΌΠΊΠ° Π΅ ΠΌΠ½ΠΎΠ³Ρ ΠΊΡΠ°ΡΠΎΠΊ <1 ΡΠ΅ΠΊΡΠ½Π΄Π°, Π½ΠΎ ΡΠ΅ ΡΠ°Π·Π»ΠΈΠΊΡΠ²Π°). ΠΠΈΠ»ΠΎΡΡΠΊΠΈΠΎΡ ΡΠΎΠ½ ΠΌΡ ΡΠΈΠ³Π½Π°Π»ΠΈΠ·ΠΈΡΠ° Π½Π° ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΡ Π΄Π° ΡΠ΅ ΠΏΠΎΠ΄Π³ΠΎΡΠ²ΠΈ Π·Π° ΠΏΡΠΈΠΌΠ°ΡΠ΅ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ. ΠΠ°ΠΊΠΎ ΠΏΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΡΠ΅ΠΊΠΎΡ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ Π³ΠΎ ΠΏΡΠ΅ΠΏΠΎΠ·Π½Π°Π²Π° ΡΠ°ΠΌΠΎ ΡΠ²ΠΎΡΠΎΡ βΡΠΎΠΏΡΡΠ²Π΅Π½β ΠΏΠΈΠ»ΠΎΡ ΡΠΎΠ½ ΠΏΠΎ ΠΎΠ±Π»ΠΈΠΊΠΎΡ Π½Π° ΡΠΈΠ³Π½Π°Π»ΠΎΡ ΠΈ Π½Π΅Π³ΠΎΠ²Π°ΡΠ° ΡΡΠ΅ΠΊΠ²Π΅Π½ΡΠΈΡΠ°.
ΠΠ΅ΠΎΠΏΡ ΠΎΠ΄Π½ΠΎ Π΅ Π΄Π° ΡΠ΅ ΠΊΠ°ΠΆΠ΅ Π½Π΅ΡΡΠΎ Π·Π° ΡΠ°ΠΌΠ°ΡΠ° ΡΠΎΡΠΌΠ° Π½Π° ΡΠΈΠ³Π½Π°Π»ΠΎΡ. ΠΠ° ΠΏΡΠΈΠΌΠ΅Ρ, Π½Π° ZX Spectrum Π½Π΅Π³ΠΎΠ²Π°ΡΠ° ΡΠΎΡΠΌΠ° Π΅ ΠΏΡΠ°Π²ΠΎΠ°Π³ΠΎΠ»Π½Π°:
ΠΠΎΠ³Π° ΡΠ΅ ΡΠ΅ ΠΎΡΠΊΡΠΈΠ΅ ΠΏΠΈΠ»ΠΎΡ-ΡΠΎΠ½, ZX Spectrum ΠΏΡΠΈΠΊΠ°ΠΆΡΠ²Π° Π½Π°ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΠ½ΠΈ ΡΡΠ²Π΅Π½ΠΈ ΠΈ ΡΠΈΠ½ΠΈ Π»Π΅Π½ΡΠΈ Π½Π° Π³ΡΠ°Π½ΠΈΡΠ°ΡΠ° Π½Π° Π΅ΠΊΡΠ°Π½ΠΎΡ Π·Π° Π΄Π° ΠΏΠΎΠΊΠ°ΠΆΠ΅ Π΄Π΅ΠΊΠ° ΡΠΈΠ³Π½Π°Π»ΠΎΡ Π΅ ΠΏΡΠ΅ΠΏΠΎΠ·Π½Π°Π΅Π½. ΠΠΈΠ»ΠΎΡΡΠΊΠΈΠΎΡ ΡΠΎΠ½ Π·Π°Π²ΡΡΡΠ²Π° ΡΠΈΠ½Ρ
ΡΠΎΠ½ ΠΏΡΠ»Ρ, ΡΡΠΎ ΠΌΡ ΡΠΈΠ³Π½Π°Π»ΠΈΠ·ΠΈΡΠ° Π½Π° ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΡ Π΄Π° ΠΏΠΎΡΠ½Π΅ Π΄Π° ΠΏΡΠΈΠΌΠ° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ. Π‘Π΅ ΠΊΠ°ΡΠ°ΠΊΡΠ΅ΡΠΈΠ·ΠΈΡΠ° ΡΠΎ ΠΏΠΎΠΊΡΠ°ΡΠΊΠΎ Π²ΡΠ΅ΠΌΠ΅ΡΡΠ°Π΅ΡΠ΅ (Π²ΠΎ ΡΠΏΠΎΡΠ΅Π΄Π±Π° ΡΠΎ ΡΠΎΠ½ΠΎΡ Π½Π° ΠΏΠΈΠ»ΠΎΡΠΎΡ ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΈΡΠ΅ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ) (Π²ΠΈΠ΄ΠΈ ΡΠ»ΠΈΠΊΠ°)
ΠΡΠΊΠ°ΠΊΠΎ ΡΠ΅ ΡΠ΅ ΠΏΡΠΈΠΌΠΈ ΠΏΡΠ»ΡΠΎΡ Π·Π° ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΡΠ°, ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΡ Π³ΠΎ ΡΠ½ΠΈΠΌΠ° ΡΠ΅ΠΊΠΎΠ΅ ΠΏΠΎΠΊΠ°ΡΡΠ²Π°ΡΠ΅/ΠΏΠ°Π΄ Π½Π° ΡΠΈΠ³Π½Π°Π»ΠΎΡ, ΠΌΠ΅ΡΠ΅ΡΡΠΈ Π³ΠΎ Π½Π΅Π³ΠΎΠ²ΠΎΡΠΎ Π²ΡΠ΅ΠΌΠ΅ΡΡΠ°Π΅ΡΠ΅. ΠΠΊΠΎ Π²ΡΠ΅ΠΌΠ΅ΡΡΠ°Π΅ΡΠ΅ΡΠΎ Π΅ ΠΏΠΎΠΌΠ°Π»ΠΎ ΠΎΠ΄ ΠΎΠ΄ΡΠ΅Π΄Π΅Π½Π° Π³ΡΠ°Π½ΠΈΡΠ°, Π±ΠΈΡΠΎΡ 1 ΡΠ΅ Π·Π°ΠΏΠΈΡΡΠ²Π° Π²ΠΎ ΠΌΠ΅ΠΌΠΎΡΠΈΡΠ°ΡΠ°, Π²ΠΎ ΡΠΏΡΠΎΡΠΈΠ²Π½ΠΎ 0. ΠΠΈΡΠΎΠ²ΠΈΡΠ΅ ΡΠ΅ ΡΠΎΠ±ΠΈΡΠ°Π°Ρ Π²ΠΎ Π±Π°ΡΡΠΈ ΠΈ ΠΏΡΠΎΡΠ΅ΡΠΎΡ ΡΠ΅ ΠΏΠΎΠ²ΡΠΎΡΡΠ²Π° Π΄ΠΎΠ΄Π΅ΠΊΠ° Π½Π΅ ΡΠ΅ ΠΏΡΠΈΠΌΠ°Ρ N Π±Π°ΡΡΠΈ. ΠΡΠΎΡΠΎΡ N ΠΎΠ±ΠΈΡΠ½ΠΎ ΡΠ΅ Π·Π΅ΠΌΠ° ΠΎΠ΄ Π·Π°Π³Π»Π°Π²ΠΈΠ΅ΡΠΎ Π½Π° ΠΏΡΠ΅Π·Π΅ΠΌΠ΅Π½Π°ΡΠ° Π΄Π°ΡΠΎΡΠ΅ΠΊΠ°. Π Π΅Π΄ΠΎΡΠ»Π΅Π΄ΠΎΡ Π½Π° Π²ΡΠΈΡΡΠ²Π°ΡΠ΅ Π΅ ΠΊΠ°ΠΊΠΎ ΡΡΠΎ ΡΠ»Π΅Π΄ΡΠ²Π°:
- ΠΏΠΈΠ»ΠΎΡΡΠΊΠΈ ΡΠΎΠ½
- Π·Π°Π³Π»Π°Π²ΠΈΠ΅ (ΡΠΈΠΊΡΠ½Π° Π΄ΠΎΠ»ΠΆΠΈΠ½Π°), ΡΠ° ΡΠΎΠ΄ΡΠΆΠΈ Π³ΠΎΠ»Π΅ΠΌΠΈΠ½Π°ΡΠ° Π½Π° ΠΏΡΠ΅Π·Π΅ΠΌΠ΅Π½ΠΈΡΠ΅ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ (N), ΠΈΠΌΠ΅ΡΠΎ ΠΈ ΡΠΈΠΏΠΎΡ Π½Π° Π΄Π°ΡΠΎΡΠ΅ΠΊΠ°ΡΠ°
- ΠΏΠΈΠ»ΠΎΡΡΠΊΠΈ ΡΠΎΠ½
- ΡΠ°ΠΌΠΈΡΠ΅ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ
ΠΠ° Π΄Π° ΡΠ΅ ΡΠ²Π΅ΡΠΈ Π΄Π΅ΠΊΠ° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈΡΠ΅ ΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ Π²ΡΠΈΡΠ°Π½ΠΈ, ZX Spectrum Π³ΠΎ ΡΠΈΡΠ° Ρ.Π½ Π±Π°ΡΡ Π·Π° ΠΏΠ°ΡΠΈΡΠ΅Ρ (Π±Π°ΡΡ Π·Π° ΠΏΠ°ΡΠΈΡΠ΅Ρ), ΠΊΠΎΡ ΡΠ΅ ΠΏΡΠ΅ΡΠΌΠ΅ΡΡΠ²Π° ΠΏΡΠΈ Π·Π°ΡΡΠ²ΡΠ²Π°ΡΠ΅ Π½Π° Π΄Π°ΡΠΎΡΠ΅ΠΊΠ° ΡΠΎ XOR-ΠΈΠΌΠ°ΡΠ΅ Π½Π° ΡΠΈΡΠ΅ Π±Π°ΡΡΠΈ ΠΎΠ΄ Π·Π°ΠΏΠΈΡΠ°Π½ΠΈΡΠ΅ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ. ΠΡΠΈ ΡΠΈΡΠ°ΡΠ΅ Π΄Π°ΡΠΎΡΠ΅ΠΊΠ°, ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΡ Π³ΠΎ ΠΏΡΠ΅ΡΠΌΠ΅ΡΡΠ²Π° Π±Π°ΡΡΠΎΡ Π½Π° ΠΏΠ°ΡΠΈΡΠ΅Ρ ΠΎΠ΄ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΠ΅ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ ΠΈ, Π΄ΠΎΠΊΠΎΠ»ΠΊΡ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΎΡ ΡΠ΅ ΡΠ°Π·Π»ΠΈΠΊΡΠ²Π° ΠΎΠ΄ Π·Π°ΡΡΠ²Π°Π½ΠΈΠΎΡ, ΡΠ° ΠΏΡΠΈΠΊΠ°ΠΆΡΠ²Π° ΠΏΠΎΡΠ°ΠΊΠ°ΡΠ° Π·Π° Π³ΡΠ΅ΡΠΊΠ° βR Tape loading errorβ. Π‘ΡΡΠΎΠ³ΠΎ ΠΊΠ°ΠΆΠ°Π½ΠΎ, ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΡ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ° ΠΈΠ·Π΄Π°Π΄Π΅ ΠΎΠ²Π°Π° ΠΏΠΎΡΠ°ΠΊΠ° ΠΏΠΎΡΠ°Π½ΠΎ Π°ΠΊΠΎ, ΠΏΡΠΈ ΡΠΈΡΠ°ΡΠ΅, Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΡΠ΅ΠΏΠΎΠ·Π½Π°Π΅ ΠΏΡΠ»Ρ (ΠΏΡΠΎΠΌΠ°ΡΠ΅Π½ ΠΈΠ»ΠΈ Π½Π΅Π³ΠΎΠ²ΠΎΡΠΎ Π²ΡΠ΅ΠΌΠ΅ΡΡΠ°Π΅ΡΠ΅ Π½Π΅ ΠΎΠ΄Π³ΠΎΠ²Π°ΡΠ° Π½Π° ΠΎΠ΄ΡΠ΅Π΄Π΅Π½ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΡΠ²Π°ΡΠ°)
ΠΠ½Π°ΡΠΈ, ΡΠ΅Π³Π° Π΄Π° Π²ΠΈΠ΄ΠΈΠΌΠ΅ ΠΊΠ°ΠΊΠΎ ΠΈΠ·Π³Π»Π΅Π΄Π° Π½Π΅ΠΏΠΎΠ·Π½Π°Ρ ΡΠΈΠ³Π½Π°Π»:
ΠΠ²Π° Π΅ ΠΏΠΈΠ»ΠΎΡΡΠΊΠΈΠΎΡ ΡΠΎΠ½. ΠΠ±Π»ΠΈΠΊΠΎΡ Π½Π° ΡΠΈΠ³Π½Π°Π»ΠΎΡ Π΅ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΡΠ°Π·Π»ΠΈΡΠ΅Π½, Π½ΠΎ ΡΠ°ΡΠ½ΠΎ Π΅ Π΄Π΅ΠΊΠ° ΡΠΈΠ³Π½Π°Π»ΠΎΡ ΡΠ΅ ΡΠΎΡΡΠΎΠΈ ΠΎΠ΄ ΠΏΠΎΠ²ΡΠΎΡΡΠ²Π°ΡΠ΅ Π½Π° ΠΊΡΠ°ΡΠΊΠΈ ΠΈΠΌΠΏΡΠ»ΡΠΈ ΡΠΎ ΠΎΠ΄ΡΠ΅Π΄Π΅Π½Π° ΡΡΠ΅ΠΊΠ²Π΅Π½ΡΠΈΡΠ°. ΠΡΠΈ ΡΡΠ΅ΠΊΠ²Π΅Π½ΡΠΈΡΠ° Π½Π° Π·Π΅ΠΌΠ°ΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠΎΡΠΈ ΠΎΠ΄ 44100 Hz, ΡΠ°ΡΡΠΎΡΠ°Π½ΠΈΠ΅ΡΠΎ ΠΏΠΎΠΌΠ΅ΡΡ βΠ²ΡΠ²ΠΎΠ²ΠΈΡΠ΅β Π΅ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ½ΠΎ 48 ΠΏΡΠΈΠΌΠ΅ΡΠΎΡΠΈ (ΡΡΠΎ ΠΎΠ΄Π³ΠΎΠ²Π°ΡΠ° Π½Π° ΡΡΠ΅ΠΊΠ²Π΅Π½ΡΠΈΡΠ° ΠΎΠ΄ ~ 918 Hz). ΠΠ° ΡΠ΅ ββΠΏΠΎΡΡΠ΅ΡΠΈΠΌΠ΅ Π½Π° ΠΎΠ²Π°Π° Π±ΡΠΎΡΠΊΠ°.
ΠΡΠ΄Π΅ ΡΠ΅Π³Π° Π΄Π° Π³ΠΎ ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ΠΌΠ΅ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠΎΡ ΡΠΎ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ:
ΠΠΊΠΎ Π³ΠΎ ΠΈΠ·ΠΌΠ΅ΡΠΈΠΌΠ΅ ΡΠ°ΡΡΠΎΡΠ°Π½ΠΈΠ΅ΡΠΎ ΠΏΠΎΠΌΠ΅ΡΡ ΠΏΠΎΠ΅Π΄ΠΈΠ½Π΅ΡΠ½ΠΈΡΠ΅ ΠΈΠΌΠΏΡΠ»ΡΠΈ, ΠΈΠ·Π»Π΅Π³ΡΠ²Π° Π΄Π΅ΠΊΠ° ΡΠ°ΡΡΠΎΡΠ°Π½ΠΈΠ΅ΡΠΎ ΠΏΠΎΠΌΠ΅ΡΡ βΠ΄ΠΎΠ»Π³ΠΈΡΠ΅β ΠΈΠΌΠΏΡΠ»ΡΠΈ Π΅ ΡΓ¨ ΡΡΡΠ΅ ~ 48 ΠΏΡΠΈΠΌΠ΅ΡΠΎΡΠΈ, Π° ΠΏΠΎΠΌΠ΅ΡΡ ΠΊΡΠ°ΡΠΊΠΈΡΠ΅ - ~ 24. ΠΠ»Π΅Π΄Π°ΡΡΠΈ ΠΌΠ°Π»ΠΊΡ Π½Π°ΠΏΡΠ΅Π΄, ΡΠ΅ ΠΊΠ°ΠΆΠ°ΠΌ Π΄Π΅ΠΊΠ° Π½Π° ΠΊΡΠ°ΡΠΎΡ ΡΠ΅ ΠΏΠΎΠΊΠ°ΠΆΠ° Π΄Π΅ΠΊΠ° βΡΠ΅ΡΠ΅ΡΠ΅Π½ΡΠ½ΠΈΡΠ΅β ΠΈΠΌΠΏΡΠ»ΡΠΈ ΡΠΎ ΡΡΠ΅ΠΊΠ²Π΅Π½ΡΠΈΡΠ° ΠΎΠ΄ 918 Hz ΡΠ»Π΅Π΄Π°Ρ ΠΊΠΎΠ½ΡΠΈΠ½ΡΠΈΡΠ°Π½ΠΎ, ΠΎΠ΄ ΠΏΠΎΡΠ΅ΡΠΎΠΊΠΎΡ Π΄ΠΎ ΠΊΡΠ°ΡΠΎΡ Π½Π° Π΄Π°ΡΠΎΡΠ΅ΠΊΠ°ΡΠ°. ΠΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΏΡΠ΅ΡΠΏΠΎΡΡΠ°Π²ΠΈ Π΄Π΅ΠΊΠ° ΠΏΡΠΈ ΠΏΡΠ΅Π½ΠΎΡ Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ, Π΄ΠΎΠΊΠΎΠ»ΠΊΡ ΡΠ΅ ΡΡΠ΅ΡΠ½Π΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»Π΅Π½ ΠΈΠΌΠΏΡΠ»Ρ ΠΏΠΎΠΌΠ΅ΡΡ ΡΠ΅ΡΠ΅ΡΠ΅Π½ΡΠ½ΠΈΡΠ΅ ΠΈΠΌΠΏΡΠ»ΡΠΈ, Π³ΠΎ ΡΠΌΠ΅ΡΠ°ΠΌΠ΅ Π·Π° Π±ΠΈΡ 1, Π²ΠΎ ΡΠΏΡΠΎΡΠΈΠ²Π½ΠΎ 0.
Π¨ΡΠΎ Π΅ ΡΠΎ ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·ΠΈΡΠ°Π½ΠΈΠΎΡ ΠΏΡΠ»Ρ? ΠΠ° Π³ΠΎ ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ΠΌΠ΅ ΠΏΠΎΡΠ΅ΡΠΎΠΊΠΎΡ Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈΡΠ΅:
ΠΠΈΠ»ΠΎΡΡΠΊΠΈΠΎΡ ΡΠΎΠ½ Π·Π°Π²ΡΡΡΠ²Π° ΠΈ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈΡΠ΅ ΠΏΠΎΡΠ½ΡΠ²Π°Π°Ρ Π²Π΅Π΄Π½Π°Ρ. ΠΠ°Π»ΠΊΡ ΠΏΠΎΠ΄ΠΎΡΠ½Π°, ΠΎΡΠΊΠ°ΠΊΠΎ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠ°Π²ΠΌΠ΅ Π½Π΅ΠΊΠΎΠ»ΠΊΡ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π°ΡΠ΄ΠΈΠΎ ΡΠ½ΠΈΠΌΠΊΠΈ, ΡΡΠΏΠ΅Π°Π²ΠΌΠ΅ Π΄Π° ΠΎΡΠΊΡΠΈΠ΅ΠΌΠ΅ Π΄Π΅ΠΊΠ° ΠΏΡΠ²ΠΈΠΎΡ Π±Π°ΡΡ Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ Π΅ ΡΠ΅ΠΊΠΎΠ³Π°Ρ ΠΈΡΡ (10100101b, A5h). ΠΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΡ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΠΎΡΠ½Π΅ Π΄Π° ΡΠΈΡΠ° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ ΠΎΡΠΊΠ°ΠΊΠΎ ΡΠ΅ Π³ΠΈ ΠΏΡΠΈΠΌΠΈ.
ΠΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΡΠΎ ΡΠ°ΠΊΠ° Π΄Π° ΠΎΠ±ΡΠ½Π΅ΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΏΠΎΠΌΠ΅ΡΡΡΠ²Π°ΡΠ΅ΡΠΎ Π½Π° ΠΏΡΠ²ΠΈΠΎΡ ΡΠ΅ΡΠ΅ΡΠ΅Π½ΡΠ΅Π½ ΠΏΡΠ»Ρ Π²Π΅Π΄Π½Π°Ρ ΠΏΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΎΡ 1-Π²ΠΈ Π²ΠΎ ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·ΠΈΡΠ°Π½ΠΈΠΎΡ Π±Π°ΡΡ. Π’Π°Π° Π±Π΅ΡΠ΅ ΠΎΡΠΊΡΠΈΠ΅Π½Π° ΠΌΠ½ΠΎΠ³Ρ ΠΏΠΎΠ΄ΠΎΡΠ½Π° Π²ΠΎ ΠΏΡΠΎΡΠ΅ΡΠΎΡ Π½Π° ΡΠ°Π·Π²ΠΈΠ²Π°ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ° Π·Π° ΠΏΡΠ΅ΠΏΠΎΠ·Π½Π°Π²Π°ΡΠ΅ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ, ΠΊΠΎΠ³Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈΡΠ΅ Π½Π° ΠΏΠΎΡΠ΅ΡΠΎΠΊΠΎΡ Π½Π° Π΄Π°ΡΠΎΡΠ΅ΠΊΠ°ΡΠ° Π½Π΅ ΠΌΠΎΠΆΠ΅Π° ΡΡΠ°Π±ΠΈΠ»Π½ΠΎ Π΄Π° ΡΠ΅ ΡΠΈΡΠ°Π°Ρ.
Π‘Π΅Π³Π° Π΄Π° ΡΠ΅ ΠΎΠ±ΠΈΠ΄Π΅ΠΌΠ΅ Π΄Π° ΠΎΠΏΠΈΡΠ΅ΠΌΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠ°ΠΌ ΡΡΠΎ ΡΠ΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΈ Π°ΡΠ΄ΠΈΠΎ Π΄Π°ΡΠΎΡΠ΅ΠΊΠ° ΠΈ ΡΠ΅ Π²ΡΠΈΡΠ° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ.
Π‘Π΅ Π²ΡΠΈΡΡΠ²Π°Π°Ρ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ
ΠΡΠ²ΠΎ, Π΄Π° ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ΠΌΠ΅ Π½Π΅ΠΊΠΎΠ»ΠΊΡ ΠΏΡΠ΅ΡΠΏΠΎΡΡΠ°Π²ΠΊΠΈ Π·Π° Π΄Π° Π³ΠΎ ΠΎΠ΄ΡΠΆΠΈΠΌΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΡ Π΅Π΄Π½ΠΎΡΡΠ°Π²Π΅Π½:
- ΠΠ΅ Π³ΠΈ ΡΠ°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΡΠ°ΠΌΠΎ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈΡΠ΅ Π²ΠΎ ΡΠΎΡΠΌΠ°Ρ WAV;
- ΠΡΠ΄ΠΈΠΎΠ΄Π°ΡΠΎΡΠ΅ΠΊΠ°ΡΠ° ΠΌΠΎΡΠ° Π΄Π° Π·Π°ΠΏΠΎΡΠ½Π΅ ΡΠΎ ΠΏΠΈΠ»ΠΎΡ ΡΠΎΠ½ ΠΈ Π½Π΅ ΡΠΌΠ΅Π΅ Π΄Π° ΡΠΎΠ΄ΡΠΆΠΈ ΡΠΈΡΠΈΠ½Π° Π½Π° ΠΏΠΎΡΠ΅ΡΠΎΠΊΠΎΡ
- ΠΠ·Π²ΠΎΡΠ½Π°ΡΠ° Π΄Π°ΡΠΎΡΠ΅ΠΊΠ° ΠΌΠΎΡΠ° Π΄Π° ΠΈΠΌΠ° Π±ΡΠ·ΠΈΠ½Π° Π½Π° Π·Π΅ΠΌΠ°ΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠΎΡΠΈ ΠΎΠ΄ 44100 Hz. ΠΠΎ ΠΎΠ²ΠΎΡ ΡΠ»ΡΡΠ°Ρ, ΡΠ°ΡΡΠΎΡΠ°Π½ΠΈΠ΅ΡΠΎ ΠΏΠΎΠΌΠ΅ΡΡ ΡΠ΅ΡΠ΅ΡΠ΅Π½ΡΠ½ΠΈΡΠ΅ ΠΈΠΌΠΏΡΠ»ΡΠΈ ΠΎΠ΄ 48 ΠΏΡΠΈΠΌΠ΅ΡΠΎΡΠΈ Π΅ Π²Π΅ΡΠ΅ ΠΎΠ΄ΡΠ΅Π΄Π΅Π½ΠΎ ΠΈ Π½Π΅ ΡΡΠ΅Π±Π° Π΄Π° Π³ΠΎ ΠΏΡΠ΅ΡΠΌΠ΅ΡΡΠ²Π°ΠΌΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΡΠΊΠΈ;
- Π€ΠΎΡΠΌΠ°ΡΠΎΡ Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠΎΠΊΠΎΡ ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΠΈΠ΄Π΅ ΠΊΠΎΡ Π±ΠΈΠ»ΠΎ (8/16 Π±ΠΈΡΠ°/ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½Π° ΡΠΎΡΠΊΠ°) - Π±ΠΈΠ΄Π΅ΡΡΠΈ ΠΏΡΠΈ ΡΠΈΡΠ°ΡΠ΅ ΠΌΠΎΠΆΠ΅ΠΌΠ΅ Π΄Π° Π³ΠΎ ΠΏΡΠ΅ΡΠ²ΠΎΡΠΈΠΌΠ΅ Π²ΠΎ ΡΠ°ΠΊΠ°Π½ΠΈΠΎΡ;
- ΠΡΠ΅ΡΠΏΠΎΡΡΠ°Π²ΡΠ²Π°ΠΌΠ΅ Π΄Π΅ΠΊΠ° ΠΈΠ·Π²ΠΎΡΠ½Π°ΡΠ° Π΄Π°ΡΠΎΡΠ΅ΠΊΠ° Π΅ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° ΠΏΠΎ Π°ΠΌΠΏΠ»ΠΈΡΡΠ΄Π°, ΡΡΠΎ ΡΡΠ΅Π±Π° Π΄Π° Π³ΠΎ ΡΡΠ°Π±ΠΈΠ»ΠΈΠ·ΠΈΡΠ° ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΎΡ;
ΠΠ»Π³ΠΎΡΠΈΡΠΌΠΎΡ Π·Π° ΡΠΈΡΠ°ΡΠ΅ ΡΠ΅ Π±ΠΈΠ΄Π΅ ΠΊΠ°ΠΊΠΎ ΡΡΠΎ ΡΠ»Π΅Π΄ΡΠ²Π°:
- ΠΠ° ΡΠΈΡΠ°ΠΌΠ΅ Π΄Π°ΡΠΎΡΠ΅ΠΊΠ°ΡΠ° Π²ΠΎ ΠΌΠ΅ΠΌΠΎΡΠΈΡΠ°, ΠΈΡΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½ΠΎ ΠΏΡΠ΅ΡΠ²ΠΎΡΠ°ΡΡΠΈ Π³ΠΎ ΡΠΎΡΠΌΠ°ΡΠΎΡ Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠΎΠΊΠΎΡ Π²ΠΎ 8 Π±ΠΈΡΠ°;
- ΠΠ΄ΡΠ΅Π΄Π΅ΡΠ΅ ΡΠ° ΠΏΠΎΠ·ΠΈΡΠΈΡΠ°ΡΠ° Π½Π° ΠΏΡΠ²ΠΈΠΎΡ ΠΏΡΠ»Ρ Π²ΠΎ Π°ΡΠ΄ΠΈΠΎ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈΡΠ΅. ΠΠ° Π΄Π° Π³ΠΎ Π½Π°ΠΏΡΠ°Π²ΠΈΡΠ΅ ΠΎΠ²Π°, ΡΡΠ΅Π±Π° Π΄Π° Π³ΠΎ ΠΏΡΠ΅ΡΠΌΠ΅ΡΠ°ΡΠ΅ Π±ΡΠΎΡΠΎΡ Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠΎΠΊΠΎΡ ΡΠΎ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»Π½Π° Π°ΠΌΠΏΠ»ΠΈΡΡΠ΄Π°. ΠΠ° Π΅Π΄Π½ΠΎΡΡΠ°Π²Π½ΠΎΡΡ, ΡΠ΅ Π³ΠΎ ΠΏΡΠ΅ΡΠΌΠ΅ΡΠ°ΠΌΠ΅ Π΅Π΄Π½Π°Ρ ΡΠ°ΡΠ½ΠΎ. ΠΠ° Π³ΠΎ Π·Π°ΡΡΠ²Π°ΠΌΠ΅ Π²ΠΎ ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π°ΡΠ° prev_pos;
- ΠΠΎΠ΄Π°Π΄Π΅ΡΠ΅ 48 Π½Π° ΠΏΠΎΠ·ΠΈΡΠΈΡΠ°ΡΠ° Π½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΎΡ ΠΏΡΠ»Ρ (pos := prev_pos + 48)
- ΠΠΈΠ΄Π΅ΡΡΠΈ Π·Π³ΠΎΠ»Π΅ΠΌΡΠ²Π°ΡΠ΅ΡΠΎ Π½Π° ΠΏΠΎΠ»ΠΎΠΆΠ±Π°ΡΠ° Π·Π° 48 Π½Π΅ Π³Π°ΡΠ°Π½ΡΠΈΡΠ° Π΄Π΅ΠΊΠ° ΡΠ΅ Π΄ΠΎΡΠ΄Π΅ΠΌΠ΅ Π΄ΠΎ ΠΏΠΎΠ·ΠΈΡΠΈΡΠ°ΡΠ° Π½Π° ΡΠ»Π΅Π΄Π½ΠΈΠΎΡ ΡΠ΅ΡΠ΅ΡΠ΅Π½ΡΠ΅Π½ ΠΏΡΠ»Ρ (Π΄Π΅ΡΠ΅ΠΊΡΠΈ Π½Π° Π»Π΅Π½ΡΠ°ΡΠ°, Π½Π΅ΡΡΠ°Π±ΠΈΠ»Π½ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠ°ΡΠ΅ Π½Π° ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΎΡ Π·Π° ΠΏΠΎΠ³ΠΎΠ½ Π½Π° Π»Π΅Π½ΡΠ°, ΠΈΡΠ½.), ΡΡΠ΅Π±Π° Π΄Π° ΡΠ° ΠΏΡΠΈΠ»Π°Π³ΠΎΠ΄ΠΈΠΌΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠ±Π°ΡΠ° Π½Π° ΠΏΡΠ»ΡΠΎΡ Π½Π° ΠΏΠΎΠ·ΠΈ. ΠΠ° Π΄Π° Π³ΠΎ Π½Π°ΠΏΡΠ°Π²ΠΈΡΠ΅ ΠΎΠ²Π°, Π·Π΅ΠΌΠ΅ΡΠ΅ ΠΌΠ°Π» Π΄Π΅Π» ΠΎΠ΄ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈΡΠ΅ (pos-8;pos+8) ΠΈ ΠΏΡΠΎΠ½Π°ΡΠ΄Π΅ΡΠ΅ ΡΠ° ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»Π½Π°ΡΠ° Π²ΡΠ΅Π΄Π½ΠΎΡΡ Π½Π° Π°ΠΌΠΏΠ»ΠΈΡΡΠ΄Π°ΡΠ° Π½Π° Π½Π΅Π°. ΠΠΎΠ·ΠΈΡΠΈΡΠ°ΡΠ° ΡΡΠΎ ΠΎΠ΄Π³ΠΎΠ²Π°ΡΠ° Π½Π° ΠΌΠ°ΠΊΡΠΈΠΌΡΠΌΠΎΡ ΡΠ΅ ΡΠ΅ Π·Π°ΡΡΠ²Π° Π²ΠΎ ΠΏΠΎΠ·. ΠΠ²Π΄Π΅ 8 = 48/6 Π΅ Π΅ΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»Π½ΠΎ Π΄ΠΎΠ±ΠΈΠ΅Π½Π° ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ°, ΠΊΠΎΡΠ° Π³Π°ΡΠ°Π½ΡΠΈΡΠ° Π΄Π΅ΠΊΠ° ΡΠ΅ Π³ΠΎ ΠΎΠ΄ΡΠ΅Π΄ΠΈΠΌΠ΅ ΡΠΎΡΠ½ΠΈΠΎΡ ΠΌΠ°ΠΊΡΠΈΠΌΡΠΌ ΠΈ Π½Π΅ΠΌΠ° Π΄Π° Π²Π»ΠΈΡΠ°Π΅ Π½Π° Π΄ΡΡΠ³ΠΈΡΠ΅ ΠΈΠΌΠΏΡΠ»ΡΠΈ ΠΊΠΎΠΈ ΠΌΠΎΠΆΠ΅Π±ΠΈ ΡΠ΅ Π²ΠΎ Π±Π»ΠΈΠ·ΠΈΠ½Π°. ΠΠΎ ΠΌΠ½ΠΎΠ³Ρ Π»ΠΎΡΠΈ ΡΠ»ΡΡΠ°ΠΈ, ΠΊΠΎΠ³Π° ΡΠ°ΡΡΠΎΡΠ°Π½ΠΈΠ΅ΡΠΎ ΠΏΠΎΠΌΠ΅ΡΡ ΠΈΠΌΠΏΡΠ»ΡΠΈΡΠ΅ Π΅ ΠΌΠ½ΠΎΠ³Ρ ΠΏΠΎΠΌΠ°Π»ΠΎ ΠΈΠ»ΠΈ ΠΏΠΎΠ³ΠΎΠ»Π΅ΠΌΠΎ ΠΎΠ΄ 48, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠΏΡΠΎΠ²Π΅Π΄Π΅ΡΠ΅ ΠΏΡΠΈΠ½ΡΠ΄Π½ΠΎ ΠΏΡΠ΅Π±Π°ΡΡΠ²Π°ΡΠ΅ Π·Π° ΠΏΡΠ»Ρ, Π½ΠΎ Π²ΠΎ ΡΠ°ΠΌΠΊΠΈΡΠ΅ Π½Π° Π½Π°ΠΏΠΈΡΠΎΡ Π½Π΅ΠΌΠ° Π΄Π° Π³ΠΎ ΠΎΠΏΠΈΡΠ°ΠΌ ΠΎΠ²Π° Π²ΠΎ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΡ;
- ΠΠ° ΠΏΡΠ΅ΡΡ ΠΎΠ΄Π½ΠΈΠΎΡ ΡΠ΅ΠΊΠΎΡ, ΠΈΡΡΠΎ ΡΠ°ΠΊΠ°, ΡΠ΅ Π±ΠΈΠ΄Π΅ Π½Π΅ΠΎΠΏΡ ΠΎΠ΄Π½ΠΎ Π΄Π° ΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΈ Π΄Π°Π»ΠΈ ΡΠ΅ΡΠ΅ΡΠ΅Π½ΡΠ½ΠΈΠΎΡ ΠΏΡΠ»Ρ Π²ΠΎΠΎΠΏΡΡΠΎ Π΅ ΠΏΡΠΎΠ½Π°ΡΠ΄Π΅Π½. ΠΠ΄Π½ΠΎΡΠ½ΠΎ, Π°ΠΊΠΎ Π΅Π΄Π½ΠΎΡΡΠ°Π²Π½ΠΎ Π³ΠΎ Π±Π°ΡΠ°ΡΠ΅ ΠΌΠ°ΠΊΡΠΈΠΌΡΠΌΠΎΡ, ΡΠΎΠ° Π½Π΅ Π³Π°ΡΠ°Π½ΡΠΈΡΠ° Π΄Π΅ΠΊΠ° ΠΈΠΌΠΏΡΠ»ΡΠΎΡ Π΅ ΠΏΡΠΈΡΡΡΠ΅Π½ Π²ΠΎ ΠΎΠ²ΠΎΡ ΡΠ΅Π³ΠΌΠ΅Π½Ρ. ΠΠΎ ΠΌΠΎΡΠ°ΡΠ° ΠΏΠΎΡΠ»Π΅Π΄Π½Π° ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ° Π½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°ΡΠ° Π·Π° ΡΠΈΡΠ°ΡΠ΅, ΡΠ° ΠΏΡΠΎΠ²Π΅ΡΡΠ²Π°ΠΌ ΡΠ°Π·Π»ΠΈΠΊΠ°ΡΠ° ΠΏΠΎΠΌΠ΅ΡΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»Π½ΠΈΡΠ΅ ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½ΠΈΡΠ΅ Π²ΡΠ΅Π΄Π½ΠΎΡΡΠΈ Π½Π° Π°ΠΌΠΏΠ»ΠΈΡΡΠ΄Π°ΡΠ° Π½Π° Π΅Π΄Π΅Π½ ΡΠ΅Π³ΠΌΠ΅Π½Ρ ΠΈ Π°ΠΊΠΎ Π½Π°Π΄ΠΌΠΈΠ½Π΅ ΠΎΠ΄ΡΠ΅Π΄Π΅Π½Π° Π³ΡΠ°Π½ΠΈΡΠ°, Π³ΠΎ Π±ΡΠΎΡΠ°ΠΌ ΠΏΡΠΈΡΡΡΡΠ²ΠΎΡΠΎ Π½Π° ΠΈΠΌΠΏΡΠ»Ρ. ΠΡΠ°ΡΠ°ΡΠ΅ΡΠΎ Π΅, ΠΈΡΡΠΎ ΡΠ°ΠΊΠ°, ΡΡΠΎ Π΄Π° ΡΠ΅ ΠΏΡΠ°Π²ΠΈ Π°ΠΊΠΎ ΡΠ΅ΡΠ΅ΡΠ΅Π½ΡΠ½ΠΈΠΎΡ ΠΏΡΠ»Ρ Π½Π΅ Π΅ ΠΏΡΠΎΠ½Π°ΡΠ΄Π΅Π½. ΠΠΌΠ° 2 ΠΎΠΏΡΠΈΠΈ: ΠΈΠ»ΠΈ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈΡΠ΅ ΡΠ΅ Π·Π°Π²ΡΡΠ΅Π½ΠΈ ΠΈ ΡΠ»Π΅Π΄ΠΈ ΡΠΈΡΠΈΠ½Π°, ΠΈΠ»ΠΈ ΠΎΠ²Π° ΡΡΠ΅Π±Π° Π΄Π° ΡΠ΅ ΡΠΌΠ΅ΡΠ° Π·Π° Π³ΡΠ΅ΡΠΊΠ° ΠΏΡΠΈ ΡΠΈΡΠ°ΡΠ΅ΡΠΎ. Π‘Π΅ΠΏΠ°ΠΊ, ΡΠ΅ Π³ΠΎ ΠΈΡΠΏΡΡΡΠΈΠΌΠ΅ ΠΎΠ²Π° Π·Π° Π΄Π° Π³ΠΎ ΠΏΠΎΠ΅Π΄Π½ΠΎΡΡΠ°Π²ΠΈΠΌΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΡ;
- ΠΠ° ΡΠ»Π΅Π΄Π½ΠΈΠΎΡ ΡΠ΅ΠΊΠΎΡ, ΡΡΠ΅Π±Π° Π΄Π° Π³ΠΎ ΠΎΠ΄ΡΠ΅Π΄ΠΈΠΌΠ΅ ΠΏΡΠΈΡΡΡΡΠ²ΠΎΡΠΎ Π½Π° ΠΏΡΠ»Ρ Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ (Π±ΠΈΡ 0 ΠΈΠ»ΠΈ 1), Π·Π° ΠΎΠ²Π° ΡΠ° Π·Π΅ΠΌΠ°ΠΌΠ΅ ΡΡΠ΅Π΄ΠΈΠ½Π°ΡΠ° Π½Π° ΡΠ΅Π³ΠΌΠ΅Π½ΡΠΎΡ (prev_pos;pos) middle_pos Π΅Π΄Π½Π°ΠΊΠΎΠ² Π½Π° middle_pos := (prev_pos+pos)/2 ΠΈ Π²ΠΎ Π½Π΅ΠΊΠΎΠ΅ ΡΠΎΡΠ΅Π΄ΡΡΠ²ΠΎ Π½Π° middle_pos Π½Π° ΡΠ΅Π³ΠΌΠ΅Π½ΡΠΎΡ (middle_pos-8;middle_pos +8) Π΄Π° ΡΠ° ΠΏΡΠ΅ΡΠΌΠ΅ΡΠ°ΠΌΠ΅ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»Π½Π°ΡΠ° ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½Π°ΡΠ° Π°ΠΌΠΏΠ»ΠΈΡΡΠ΄Π°. ΠΠΊΠΎ ΡΠ°Π·Π»ΠΈΠΊΠ°ΡΠ° ΠΌΠ΅ΡΡ Π½ΠΈΠ² Π΅ ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΎΠ΄ 10, Π³ΠΎ Π·Π°ΠΏΠΈΡΡΠ²Π°ΠΌΠ΅ Π±ΠΈΡΠΎΡ 1 Π²ΠΎ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΎΡ, ΠΈΠ½Π°ΠΊΡ 0. 10 Π΅ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ° Π΄ΠΎΠ±ΠΈΠ΅Π½Π° Π΅ΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»Π½ΠΎ;
- ΠΠ°ΡΡΠ²Π°ΡΡΠ΅ ΡΠ° ΠΌΠΎΠΌΠ΅Π½ΡΠ°Π»Π½Π°ΡΠ° ΠΏΠΎΠ·ΠΈΡΠΈΡΠ° Π²ΠΎ prev_pos (prev_pos := pos)
- ΠΠΎΠ²ΡΠΎΡΠ΅ΡΠ΅ ΠΏΠΎΡΠ½ΡΠ²Π°ΡΡΠΈ ΠΎΠ΄ ΡΠ΅ΠΊΠΎΡ 3 Π΄ΠΎΠ΄Π΅ΠΊΠ° Π½Π΅ ΡΠ° ΠΏΡΠΎΡΠΈΡΠ°ΠΌΠ΅ ΡΠ΅Π»Π°ΡΠ° Π΄Π°ΡΠΎΡΠ΅ΠΊΠ°;
- ΠΠΎΠ±ΠΈΠ΅Π½Π°ΡΠ° Π±ΠΈΡΠ½Π° Π½ΠΈΠ·Π° ΠΌΠΎΡΠ° Π΄Π° ΡΠ΅ Π·Π°ΡΡΠ²Π° ΠΊΠ°ΠΊΠΎ Π·Π±ΠΈΡ ΠΎΠ΄ Π±Π°ΡΡΠΈ. ΠΠΈΠ΄Π΅ΡΡΠΈ Π½Π΅ Π³ΠΎ Π·Π΅ΠΌΠ°Π²ΠΌΠ΅ ΠΏΡΠ΅Π΄Π²ΠΈΠ΄ Π±Π°ΡΡΠΎΡ Π·Π° ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΡΠ° ΠΏΡΠΈ ΡΠΈΡΠ°ΡΠ΅, Π±ΡΠΎΡΠΎΡ Π½Π° Π±ΠΈΡΠΎΠ²ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° Π½Π΅ Π΅ ΠΌΠ½ΠΎΠΆΠΈΡΠ΅Π» Π½Π° 8, Π° ΠΏΠΎΡΡΠ΅Π±Π½Π°ΡΠ° Π±ΠΈΡΡΠΊΠ° ΠΏΠΎΠΌΠ΅ΡΡΡΠ²Π°ΡΠ΅ ΠΈΡΡΠΎ ΡΠ°ΠΊΠ° Π΅ Π½Π΅ΠΏΠΎΠ·Π½Π°ΡΠ°. ΠΠΎ ΠΏΡΠ²Π°ΡΠ° ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ° Π½Π° Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΡ, Π½Π΅ Π·Π½Π°Π΅Π² Π·Π° ΠΏΠΎΡΡΠΎΠ΅ΡΠ΅ΡΠΎ Π½Π° ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·ΠΈΡΠ°Π½ΠΈΠΎΡ Π±Π°ΡΡ ΠΈ Π·Π°ΡΠΎΠ° Π΅Π΄Π½ΠΎΡΡΠ°Π²Π½ΠΎ Π·Π°ΡΡΠ²Π°Π² 8 Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ ΡΠΎ ΡΠ°Π·Π»ΠΈΡΠ΅Π½ Π±ΡΠΎΡ Π½Π° Π±ΠΈΡΠΎΠ²ΠΈ Π·Π° ΠΎΡΡΠ΅Ρ. ΠΠ΄Π΅Π½ ΠΎΠ΄ Π½ΠΈΠ² ΡΠΎΠ΄ΡΠΆΠ΅Π» ΡΠΎΡΠ½ΠΈ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ. ΠΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΎΡ Π°Π»Π³ΠΎΡΠΈΡΠ°ΠΌ, Π΅Π΄Π½ΠΎΡΡΠ°Π²Π½ΠΎ Π³ΠΈ ΠΎΡΡΡΡΠ°Π½ΡΠ²Π°ΠΌ ΡΠΈΡΠ΅ Π±ΠΈΡΠΎΠ²ΠΈ Π΄ΠΎ A5h, ΡΡΠΎ ΠΌΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡΠ²Π° Π²Π΅Π΄Π½Π°Ρ Π΄Π° ΡΠ° Π΄ΠΎΠ±ΠΈΡΠ°ΠΌ ΡΠΎΡΠ½Π°ΡΠ° ΠΈΠ·Π»Π΅Π·Π½Π° Π΄Π°ΡΠΎΡΠ΅ΠΊΠ°
ΠΠ»Π³ΠΎΡΠΈΡΠ°ΠΌ Π²ΠΎ Π ΡΠ±ΠΈ, Π·Π° Π·Π°ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΈΡΠ°Π½ΠΈΡΠ΅
ΠΠΎ ΠΈΠ·Π±ΡΠ°Π² Ruby ΠΊΠ°ΠΊΠΎ ΡΠ°Π·ΠΈΠΊ Π·Π° ΠΏΠΈΡΡΠ²Π°ΡΠ΅ Π½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°ΡΠ°, Π±ΠΈΠ΄Π΅ΡΡΠΈ ... ΠΠ°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈΡΠ°ΠΌ Π½Π° Π½Π΅Π³ΠΎ Π½Π°ΡΡΠ΅ΡΡΠΎ. ΠΠΏΡΠΈΡΠ°ΡΠ° Π½Π΅ Π΅ ΡΠΎ Π²ΠΈΡΠΎΠΊΠΈ ΠΏΠ΅ΡΡΠΎΡΠΌΠ°Π½ΡΠΈ, Π½ΠΎ Π·Π°Π΄Π°ΡΠ°ΡΠ° Π΄Π° ΡΠ΅ Π½Π°ΠΏΡΠ°Π²ΠΈ Π±ΡΠ·ΠΈΠ½Π°ΡΠ° Π½Π° ΡΠΈΡΠ°ΡΠ΅ ΡΡΠΎ Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ±ΡΠ·Π° Π½Π΅ Π²ΡΠ΅Π΄ΠΈ.
# ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ gem 'wavefile'
require 'wavefile'
reader = WaveFile::Reader.new('input.wav')
samples = []
format = WaveFile::Format.new(:mono, :pcm_8, 44100)
# Π§ΠΈΡΠ°Π΅ΠΌ WAV ΡΠ°ΠΉΠ», ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΡΠ΅ΠΌ Π² ΡΠΎΡΠΌΠ°Ρ Mono, 8 bit
# ΠΠ°ΡΡΠΈΠ² samples Π±ΡΠ΄Π΅Ρ ΡΠΎΡΡΠΎΡΡΡ ΠΈΠ· Π±Π°ΠΉΡ ΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ 0-255
reader.each_buffer(10000) do |buffer|
samples += buffer.convert(format).samples
end
# ΠΠΎΠ·ΠΈΡΠΈΡ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΠΈΠΌΠΏΡΠ»ΡΡΠ° (Π²ΠΌΠ΅ΡΡΠΎ 0)
prev_pos = 0
# Π Π°ΡΡΡΠΎΡΠ½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΠΈΠΌΠΏΡΠ»ΡΡΠ°ΠΌΠΈ
distance = 48
# ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΡ Π΄Π»Ρ ΠΎΠΊΡΠ΅ΡΡΠ½ΠΎΡΡΠΈ ΠΏΠΎΠΈΡΠΊΠ° Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΠΊΡΠΈΠΌΡΠΌΠ°
delta = (distance / 6).floor
# ΠΠΈΡΡ Π±ΡΠ΄Π΅ΠΌ ΡΠΎΡ
ΡΠ°Π½ΡΡΡ Π² Π²ΠΈΠ΄Π΅ ΡΡΡΠΎΠΊΠΈ ΠΈΠ· "0" ΠΈ "1"
bits = ""
loop do
# Π Π°ΡΡΡΠΈΡΡΠ²Π°Π΅ΠΌ ΠΏΠΎΠ·ΠΈΡΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ ΠΈΠΌΠΏΡΠ»ΡΡΠ°
pos = prev_pos + distance
# ΠΡΡ
ΠΎΠ΄ΠΈΠΌ ΠΈΠ· ΡΠΈΠΊΠ»Π° Π΅ΡΠ»ΠΈ Π΄Π°Π½Π½ΡΠ΅ Π·Π°ΠΊΠΎΠ½ΡΠΈΠ»ΠΈΡΡ
break if pos + delta >= samples.size
# ΠΠΎΡΡΠ΅ΠΊΡΠΈΡΡΠ΅ΠΌ ΠΏΠΎΠ·ΠΈΡΠΈΡ pos ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΌΠ°ΠΊΡΠΈΠΌΡΠΌΠ° Π½Π° ΠΎΡΡΠ΅Π·ΠΊΠ΅ [pos - delta;pos + delta]
(pos - delta..pos + delta).each { |p| pos = p if samples[p] > samples[pos] }
# ΠΠ°Ρ
ΠΎΠ΄ΠΈΠΌ ΡΠ΅ΡΠ΅Π΄ΠΈΠ½Ρ ΠΎΡΡΠ΅Π·ΠΊΠ° [prev_pos;pos]
middle_pos = ((prev_pos + pos) / 2).floor
# ΠΠ΅ΡΠ΅ΠΌ ΠΎΠΊΡΠ΅ΡΡΠ½ΠΎΡΡΡ Π² ΡΠ΅ΡΠ΅Π΄ΠΈΠ½Π΅
sample = samples[middle_pos - delta..middle_pos + delta]
# ΠΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌ Π±ΠΈΡ ΠΊΠ°ΠΊ "1" Π΅ΡΠ»ΠΈ ΡΠ°Π·Π½ΠΈΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΌ ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ Π½Π° ΠΎΡΡΠ΅Π·ΠΊΠ΅ ΠΏΡΠ΅Π²ΡΡΠ°Π΅Ρ 10
bit = sample.max - sample.min > 10
bits += bit ? "1" : "0"
end
# ΠΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌ ΡΠΈΠ½Ρ
ΡΠΎ-Π±Π°ΠΉΡ ΠΈ Π·Π°ΠΌΠ΅Π½ΡΠ΅ΠΌ Π²ΡΠ΅ ΠΏΡΠ΅Π΄ΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ Π±ΠΈΡΡ Π½Π° 256 Π±ΠΈΡ Π½ΡΠ»Π΅ΠΉ (ΡΠΎΠ³Π»Π°ΡΠ½ΠΎ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΠΎΡΠΌΠ°ΡΠ°)
bits.gsub! /^[01]*?10100101/, ("0" * 256) + "10100101"
# Π‘ΠΎΡ
ΡΠ°Π½ΡΠ΅ΠΌ Π²ΡΡ
ΠΎΠ΄Π½ΠΎΠΉ ΡΠ°ΠΉΠ», ΡΠΏΠ°ΠΊΠΎΠ²ΡΠ²Π°Ρ Π±ΠΈΡΡ Π² Π±Π°ΠΉΡΡ
File.write "output.cas", [bits].pack("B*")
Π Π΅Π·ΡΠ»ΡΠΈΡΠ°
ΠΡΠΊΠ°ΠΊΠΎ ΠΏΡΠΎΠ±Π°Π² Π½Π΅ΠΊΠΎΠ»ΠΊΡ Π²Π°ΡΠΈΡΠ°Π½ΡΠΈ Π½Π° Π°Π»Π³ΠΎΡΠΈΡΠ°ΠΌ ΠΈ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠΈ, ΠΈΠΌΠ°Π² ΡΡΠ΅ΡΠ° Π΄Π° Π΄ΠΎΠ±ΠΈΡΠ°ΠΌ Π½Π΅ΡΡΠΎ ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ:
ΠΠ½Π°ΡΠΈ, ΡΡΠ΄Π΅ΡΡΠΈ ΡΠΏΠΎΡΠ΅Π΄ Π½ΠΈΠ·ΠΈΡΠ΅ Π½Π° Π·Π½Π°ΡΠΈ, ΠΈΠΌΠ°ΠΌΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ° Π·Π° ΠΈΡΡΡΡΡΠ²Π°ΡΠ΅ Π³ΡΠ°ΡΠΈΠΊΠΎΠ½ΠΈ. Π‘Π΅ΠΏΠ°ΠΊ, Π½Π΅ΠΌΠ° ΠΊΠ»ΡΡΠ½ΠΈ Π·Π±ΠΎΡΠΎΠ²ΠΈ Π²ΠΎ ΡΠ΅ΠΊΡΡΠΎΡ Π½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°ΡΠ°. Π‘ΠΈΡΠ΅ ΠΊΠ»ΡΡΠ½ΠΈ Π·Π±ΠΎΡΠΎΠ²ΠΈ ΡΠ΅ ΠΊΠΎΠ΄ΠΈΡΠ°Π½ΠΈ ΠΊΠ°ΠΊΠΎ Π±Π°ΡΡΠΈ (ΡΠ΅ΠΊΠΎΡΠ° Π²ΡΠ΅Π΄Π½ΠΎΡΡ > 80h). Π‘Π΅Π³Π° ΡΡΠ΅Π±Π° Π΄Π° ΠΎΡΠΊΡΠΈΠ΅ΠΌΠ΅ ΠΊΠΎΡ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ ΠΎΠ΄ 80-ΡΠΈΡΠ΅ ΠΌΠΎΠΆΠ΅ Π΄Π° Π·Π°ΡΡΠ²ΡΠ²Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ Π²ΠΎ ΠΎΠ²ΠΎΡ ΡΠΎΡΠΌΠ°Ρ.
ΠΡΡΡΠ½ΠΎΡΡ, ΡΠ°Π° Π΅ ΠΌΠ½ΠΎΠ³Ρ ΡΠ»ΠΈΡΠ½Π° Π½Π° BASIC ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°. ΠΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΡ ZX Spectrum ΡΠΊΠ»Π°Π΄ΠΈΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ Π²ΠΎ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ½ΠΎ ΠΈΡΡ ΡΠΎΡΠΌΠ°Ρ Π²ΠΎ ΠΌΠ΅ΠΌΠΎΡΠΈΡΠ°ΡΠ° ΠΈ Π³ΠΈ Π·Π°ΡΡΠ²ΡΠ²Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈΡΠ΅ Π½Π° Π»Π΅Π½ΡΠ°. ΠΠ° ΡΠ΅ΠΊΠΎΡ ΡΠ»ΡΡΠ°Ρ, Π³ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΈΠ² ΠΊΠ»ΡΡΠ½ΠΈΡΠ΅ Π·Π±ΠΎΡΠΎΠ²ΠΈ ΠΏΡΠΎΡΠΈΠ²
ΠΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΈΠ² ΠΈ ΠΠ‘ΠΠΠΠ½ΠΈΡΠ΅ ΠΊΠ»ΡΡΠ½ΠΈ Π·Π±ΠΎΡΠΎΠ²ΠΈ Π½Π° ΠΏΠΎΠΏΡΠ»Π°ΡΠ½ΠΈΡΠ΅ Atari, Commodore 64 ΠΈ Π½Π΅ΠΊΠΎΠ»ΠΊΡ Π΄ΡΡΠ³ΠΈ ΠΎΠ΄ ΡΠΎΠ° Π²ΡΠ΅ΠΌΠ΅ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΈ, Π·Π° ΠΊΠΎΠΈ ΡΡΠΏΠ΅Π°Π² Π΄Π° Π½Π°ΡΠ΄Π°ΠΌ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ°, Π½ΠΎ Π±Π΅Π·ΡΡΠΏΠ΅ΡΠ½ΠΎ - ΠΌΠΎΠ΅ΡΠΎ Π·Π½Π°Π΅ΡΠ΅ Π·Π° Π²ΠΈΠ΄ΠΎΠ²ΠΈΡΠ΅ ΡΠ΅ΡΡΠΎ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΈ ΡΠ΅ ΠΏΠΎΠΊΠ°ΠΆΠ° Π΄Π΅ΠΊΠ° Π½Π΅ Π΅ ΡΠΎΠ»ΠΊΡ ΡΠΈΡΠΎΠΊΠΎ.
Π’ΠΎΠ³Π°Ρ ΡΠ΅ΡΠΈΠ² Π΄Π° ΠΎΠ΄Π°ΠΌ
ΠΠΎΠΌΠΏΡΡΡΠ΅Ρ Tandy/Radio Shack TRS-80
ΠΠ½ΠΎΠ³Ρ Π΅ Π²Π΅ΡΠΎΡΠ°ΡΠ½ΠΎ Π΄Π΅ΠΊΠ° ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠ½Π°ΡΠ° Π°ΡΠ΄ΠΈΠΎ ΡΠ½ΠΈΠΌΠΊΠ°, ΠΊΠΎΡΠ° ΡΠ° Π½Π°Π²Π΅Π΄ΠΎΠ² ΠΊΠ°ΠΊΠΎ ΠΏΡΠΈΠΌΠ΅Ρ Π½Π° ΠΏΠΎΡΠ΅ΡΠΎΠΊΠΎΡ Π½Π° ΡΡΠ°ΡΠΈΡΠ°ΡΠ°, Π΅ Π½Π°ΠΏΡΠ°Π²Π΅Π½Π° Π½Π° Π²Π°ΠΊΠΎΠ² ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ:
Π‘Π΅ ΠΈΡΠΏΠΎΡΡΠ°Π²ΠΈ Π΄Π΅ΠΊΠ° ΠΎΠ²ΠΎΡ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ ΠΈ Π½Π΅Π³ΠΎΠ²ΠΈΡΠ΅ ΡΠΎΡΡΠΈ (ΠΠΎΠ΄Π΅Π» I / ΠΠΎΠ΄Π΅Π» III / ΠΠΎΠ΄Π΅Π» IV, ΠΈΡΠ½.) Π±ΠΈΠ»Π΅ ΠΌΠ½ΠΎΠ³Ρ ΠΏΠΎΠΏΡΠ»Π°ΡΠ½ΠΈ Π΅Π΄Π½ΠΎ Π²ΡΠ΅ΠΌΠ΅ (ΡΠ΅ ΡΠ°Π·Π±ΠΈΡΠ°, Π½Π΅ Π²ΠΎ Π ΡΡΠΈΡΠ°). ΠΡΠ΅Π΄ΠΈ Π΄Π° ΡΠ΅ ΠΎΠ΄Π±Π΅Π»Π΅ΠΆΠΈ Π΄Π΅ΠΊΠ° ΠΏΡΠΎΡΠ΅ΡΠΎΡΠΎΡ ΡΡΠΎ Π³ΠΎ ΠΊΠΎΡΠΈΡΡΠ΅Π° ΠΈΡΡΠΎ ΡΠ°ΠΊΠ° Π±Π΅ΡΠ΅ Z80. ΠΠ° ΠΎΠ²ΠΎΡ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π½Π°ΡΠ΄Π΅ΡΠ΅ Π½Π° ΠΠ½ΡΠ΅ΡΠ½Π΅Ρ
ΠΠΎ ΡΠΈΠΌΠ½Π°Π² Π΅ΠΌΡΠ»Π°ΡΠΎΡΠΎΡ
ΠΠ°ΡΠ΄ΠΎΠ² ΠΈ ΡΠ°Ρ
ΠΡΠΊΠ°ΠΊΠΎ Π³ΠΎ ΡΡΠ°ΡΠΈΠ² ΡΠΎΡΠΌΠ°ΡΠΎΡ Π½Π° Π΄Π°ΡΠΎΡΠ΅ΠΊΠ°ΡΠ° CAS (ΠΊΠΎΡ ΡΠ΅ ΠΈΡΠΏΠΎΡΡΠ°Π²ΠΈ Π΄Π΅ΠΊΠ° Π΅ ΡΠ°ΠΌΠΎ ΠΊΠΎΠΏΠΈΡΠ° ΠΏΠΎ ΠΌΠ°Π»ΠΊΡ ΠΎΠ΄ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈΡΠ΅ ΠΎΠ΄ Π»Π΅Π½ΡΠ°ΡΠ° ΡΡΠΎ Π²Π΅ΡΠ΅ ΡΠ° ΠΈΠΌΠ°Π² ΠΏΡΠΈ ΡΠ°ΠΊΠ°, ΠΎΡΠ²Π΅Π½ Π·Π°Π³Π»Π°Π²ΠΈΠ΅ΡΠΎ ΡΠΎ ΠΏΡΠΈΡΡΡΡΠ²ΠΎ Π½Π° Π±Π°ΡΡ Π·Π° ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΡΠ°), Π½Π°ΠΏΡΠ°Π²ΠΈΠ² Π½Π΅ΠΊΠΎΠ»ΠΊΡ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ Π²ΠΎ ΠΌΠΎΡΠ°ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ° ΠΈ ΠΌΠΎΠΆΠ΅Π² Π΄Π° ΠΈΠ·Π»Π΅Π·Π°ΠΌ ΡΠ°Π±ΠΎΡΠ½Π° CAS-Π΄Π°ΡΠΎΡΠ΅ΠΊΠ° ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ΅ΡΠ΅ Π²ΠΎ Π΅ΠΌΡΠ»Π°ΡΠΎΡΠΎΡ (TRS-80 Model III):
ΠΠ° Π΄ΠΈΠ·Π°ΡΠ½ΠΈΡΠ°Π² Π½Π°ΡΠ½ΠΎΠ²Π°ΡΠ° Π²Π΅ΡΠ·ΠΈΡΠ° Π½Π° Π°Π»Π°ΡΠΊΠ°ΡΠ° Π·Π° ΠΊΠΎΠ½Π²Π΅ΡΠ·ΠΈΡΠ° ΡΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΡΠΊΠΎ ΠΎΠ΄ΡΠ΅Π΄ΡΠ²Π°ΡΠ΅ Π½Π° ΠΏΡΠ²ΠΈΠΎΡ ΠΏΡΠ»Ρ ΠΈ ΡΠ°ΡΡΠΎΡΠ°Π½ΠΈΠ΅ΡΠΎ ΠΏΠΎΠΌΠ΅ΡΡ ΡΠ΅ΡΠ΅ΡΠ΅Π½ΡΠ½ΠΈΡΠ΅ ΠΈΠΌΠΏΡΠ»ΡΠΈ ΠΊΠ°ΠΊΠΎ GEM ΠΏΠ°ΠΊΠ΅Ρ, ΠΈΠ·Π²ΠΎΡΠ½ΠΈΠΎΡ ΠΊΠΎΠ΄ Π΅ Π΄ΠΎΡΡΠ°ΠΏΠ΅Π½ Π½Π°
ΠΠ°ΠΊΠ»ΡΡΠΎΠΊ
ΠΠ°ΡΠΎΡ ΡΡΠΎ Π³ΠΎ ΠΏΠΎΠΌΠΈΠ½Π°Π²ΠΌΠ΅ ΡΠ΅ ΠΏΠΎΠΊΠ°ΠΆΠ° ΠΊΠ°ΠΊΠΎ ΡΠ°ΡΡΠΈΠ½Π°Π½ΡΠ½ΠΎ ΠΏΠ°ΡΡΠ²Π°ΡΠ΅ Π²ΠΎ ΠΌΠΈΠ½Π°ΡΠΎΡΠΎ ΠΈ ΠΌΠΈΠ»ΠΎ ΠΌΠΈ Π΅ ΡΡΠΎ Π½Π° ΠΊΡΠ°ΡΠΎΡ Π³ΠΎ Π½Π°ΡΠ΄ΠΎΠ² ΠΎΠ΄Π³ΠΎΠ²ΠΎΡΠΎΡ. ΠΠ΅ΡΡ Π΄ΡΡΠ³ΠΎΡΠΎ, ΡΠ°Ρ:
- ΠΠΎ ΡΡΠ°ΡΠΈΠ² ΡΠΎΡΠΌΠ°ΡΠΎΡ Π·Π° Π·Π°ΡΡΠ²ΡΠ²Π°ΡΠ΅ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ Π²ΠΎ ZX Spectrum ΠΈ Π³ΠΈ ΠΏΡΠΎΡΡΡΠ²Π°Π² Π²Π³ΡΠ°Π΄Π΅Π½ΠΈΡΠ΅ ROM ΡΡΡΠΈΠ½ΠΈ Π·Π° Π·Π°ΡΡΠ²ΡΠ²Π°ΡΠ΅/ΡΠΈΡΠ°ΡΠ΅ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ ΠΎΠ΄ Π°ΡΠ΄ΠΈΠΎ ΠΊΠ°ΡΠ΅ΡΠΈ
- Π‘Π΅ Π·Π°ΠΏΠΎΠ·Π½Π°Π² ΡΠΎ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΡ TRS-80 ΠΈ Π½Π΅Π³ΠΎΠ²ΠΈΡΠ΅ ΡΠΎΡΡΠΈ, Π³ΠΎ ΠΏΡΠΎΡΡΡΠ²Π°Π² ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΈΠΎΡ ΡΠΈΡΡΠ΅ΠΌ, ΠΏΠΎΠ³Π»Π΅Π΄Π½Π°Π² ΠΏΡΠΈΠΌΠ΅ΡΠΎΡΠΈ Π½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ ΠΈ Π΄ΡΡΠΈ ΠΈΠΌΠ°Π² ΠΌΠΎΠΆΠ½ΠΎΡΡ Π΄Π° Π½Π°ΠΏΡΠ°Π²Π°ΠΌ Π΄Π΅Π±Π°Π³ΠΈΡΠ°ΡΠ΅ Π²ΠΎ ΠΌΠ°ΡΠΈΠ½ΡΠΊΠΈΡΠ΅ ΠΊΠΎΠ΄ΠΎΠ²ΠΈ (Π½Π° ΠΊΡΠ°ΡΠΎΡ Π½Π° ΠΊΡΠ°ΠΈΡΡΠ°ΡΠ°, ΡΠΈΡΠ΅ ΠΌΠ½Π΅ΠΌΠΎΠ½ΠΈΡΠΈ Π½Π° Z80 ΠΌΠΈ ΡΠ΅ ΠΏΠΎΠ·Π½Π°ΡΠΈ)
- ΠΠ°ΠΏΠΈΡΠ° ΡΠ΅Π»ΠΎΡΠ½Π° Π°Π»Π°ΡΠΊΠ° Π·Π° ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΠ°ΡΠ΅ Π°ΡΠ΄ΠΈΠΎ ΡΠ½ΠΈΠΌΠΊΠΈ Π²ΠΎ ΡΠΎΡΠΌΠ°Ρ CAS, ΠΊΠΎΡ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠΈΡΠ° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ ΡΡΠΎ Π½Π΅ ΡΠ΅ ΠΏΡΠ΅ΠΏΠΎΠ·Π½Π°Π²Π°Π°Ρ ΠΎΠ΄ βΠΎΡΠΈΡΠΈΡΠ°Π»Π½Π°ΡΠ°β Π°Π»Π°ΡΠΊΠ°
ΠΠ·Π²ΠΎΡ: www.habr.com