ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании студСнчСских Ρ€Π°Π±ΠΎΡ‚
АнтистрСссовый сСрвис

ΠšΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ Π€Π°ΠΉΡ€Π°

ΠšΡƒΡ€ΡΠΎΠ²Π°ΡΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

Π’ Ρ†Π΅Π»ΠΎΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» ΡˆΠΈΡ€ΠΎΠΊΠΎΠ΅ распространСниС ΠΈΠ·-Π·Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ наслСдования, инкапсуляции ΠΈ ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌΠ°. ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹Π΅ классы ΠΎΡ‚ ΠΊΠ»Π°ΡΡΠΎΠ²-ΠΏΡ€Π°Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»Π΅ΠΉ ΠΌΠΎΠ³ΡƒΡ‚ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, поэтому Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ старых ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Π½Π΅ Ρ‚рСбуСтся. ΠšΠ»Π°ΡΡΡ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, Ρ‚Π°ΠΊ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Ρ‡Ρ‚ΠΎ максимально ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΏΡ€ΠΈ объСдинСнии логичСски связанных Π΄Π°Π½Π½Ρ‹Ρ…. Один класс ΠΌΠΎΠΆΠ΅Ρ‚… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

ΠšΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ Π€Π°ΠΉΡ€Π° (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

Π”Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ людСй связана с ΠΏΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠ², энСргии ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. БоотвСтствСнно Ρ€Π°Π·Π²ΠΈΠ²Π°Π»ΠΈΡΡŒ Π½Π°ΡƒΡ‡Π½Ρ‹Π΅ тСхничСскиС дисциплины, ΠΎΡ‚Ρ€Π°ΠΆΠ°ΡŽΡ‰ΠΈΠ΅ вопросы Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, энСргСтики ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠΊΠΈ. Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Π°Ρ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ° являСтся ΡΡ€Π°Π²Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½ΠΎΠ²ΠΎΠΉ ΠΎΡ‚Ρ€Π°ΡΠ»ΡŒΡŽ, ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‰Π΅ΠΉ наибольшСС Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ Π½Π° ΡΡ‚Π°ΠΏΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ элСктронных Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… машин (Π­Π’Πœ) ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… систСм управлСния (АБУ).

Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Π°Ρ Π½Π°ΡƒΠΊΠ° Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² ΡΠ°ΠΌΡ‹Ρ… Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹Ρ… областях Ρ‚Π΅ΠΎΡ€ΠΈΠΈ ΠΈ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ. Π¦Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½ΠΎΠΉ Π²Π΅Ρ‚Π²ΡŒΡŽ являСтся тСория связи, созданная Π¨Π΅Π½Π½ΠΎΠ½ΠΎΠΌ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Ρ‚Π΅ΠΎΡ€ΠΈΠΈ вСроятностСй.

Π‘ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ΠΉ ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ связаны дСйствия любого автоматичСского устройства, ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΆΠΈΠ²ΠΎΠ³ΠΎ сущСства, творчСская Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ°, Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ Π½Π°ΡƒΠΊΠΈ ΠΈ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠΈ, экономичСскиС ΠΈ ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ прСобразования Π² ΠΎΠ±Ρ‰Π΅ΡΡ‚Π²Π΅ ΠΈ ΡΠ°ΠΌΠ° Тизнь. Для Π±ΠΎΠ»Π΅Π΅ эффСктивного использования ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠ±ΠΌΠ΅Π½ΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ, Ρ‡Ρ‚ΠΎ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π±Π΅Π· Π΅Ρ‘ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΏΠΎ ΠΊΠ°Π½Π°Π»Π°ΠΌ связи.

ΠŸΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΏΠΎ ΠΊΠ°Π½Π°Π»Π°ΠΌ связи ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ искаТСниС ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Для прСдотвращСния ΠΏΠΎΡ‚Π΅Ρ€ΡŒ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π·Π°Ρ‰ΠΈΡ‚Ρ‹. Одним ΠΈΠ· Π½ΠΈΡ… являСтся ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΏΠΎΠΌΠ΅Ρ…ΠΎΠ·Π°Ρ‰ΠΈΡ‰Ρ‘Π½Π½Ρ‹Ρ… ΠΊΠΎΠ΄ΠΎΠ².

Π”Π²ΠΎΠΈΡ‡Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ Π½Π° Π²ΡΠ΅ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ Π½Π΅ ΡΠ²Π»ΡΠ΅Ρ‚ся ΠΏΠΎΠΌΠ΅Ρ…ΠΎΠ·Π°Ρ‰ΠΈΡ‰Ρ‘Π½Π½Ρ‹ΠΌ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π΅Π³ΠΎ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π° лишь Π² ΠΎΠ΄Π½ΠΎΠΌ разрядС, Ρ‡Ρ‚ΠΎ Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ Π½Π° ΠΏΡ€ΠΈΡ‘ΠΌΠ½ΠΎΠΉ сторонС ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚ΡŒ ΠΈ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ возникшиС ошибки. Π’ ΡΡ‚ΠΎΠΉ связи Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ построСния ΠΏΠΎΠΌΠ΅Ρ…ΠΎΠ·Π°Ρ‰ΠΈΡ‰Ρ‘Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°.

ΠŸΠΎΠΌΠ΅Ρ…ΠΎΠ·Π°Ρ‰ΠΈΡ‰Ρ‘Π½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹ — это ΠΊΠΎΠ΄Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΈ ΠΈΡΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ошибки, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ сообщСния. Для достиТСния помСхозащищСнности ΠΌΠΎΠΆΠ½ΠΎ ввСсти ΠΈΠ·Π±Ρ‹Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Ρ… разрядов.

БущСствуСт ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² построСния ΠΏΠΎΠΌΠ΅Ρ…ΠΎΠ·Π°Ρ‰ΠΈΡ‰Ρ‘Π½Π½Ρ‹Ρ… ΠΊΠΎΠ΄ΠΎΠ². Π’ Π΄Π°Π½Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π΅ рассматриваСтся ΠΊΠΎΠ΄ Π€Π°ΠΉΡ€Π°. Он ΡΠ²Π»ΡΠ΅Ρ‚ся частным случаСм Π³Ρ€ΡƒΠΏΠΏΡ‹ цикличСских ΠΊΠΎΠ΄ΠΎΠ². А ΠΈΠΌΠ΅Π½Π½ΠΎ, ΠΎΠ½ ΠΎΡ‚носится ΠΊ Ρ†ΠΈΠΊΠ»ΠΈΡ‡Π΅ΡΠΊΠΈΠΌ ΠΊΠΎΠ΄Π°ΠΌ, ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΠΌ ΠΈ ΠΈΡΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠΌ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ ошибок.

ЦикличСскиС ΠΊΠΎΠ΄Ρ‹ ΡΠ²Π»ΡΡŽΡ‚ΡΡ основным классом Π³Ρ€ΡƒΠΏΠΏΠΎΠ²Ρ‹Ρ… помСхоустойчивых ΠΊΠΎΠ΄ΠΎΠ² ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ся для исправлСния ΠΈ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΡ ошибок, Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΏΠΎ ΠΊΠ°Π½Π°Π»Ρƒ связи. Устройства, ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΠ΅ ΠΈ ΠΈΡΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ ошибки, построСнныС Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ цикличСского ΠΊΠΎΠ΄Π°, часто ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСмах.

1. ΠŸΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΊΠ° Π·Π°Π΄Π°Ρ‡ΠΈ

1.1 Анализ тСхничСского задания

Π’ ΡΠΎΠΎΡ‚вСтствии с Ρ‚СхничСским Π·Π°Π΄Π°Π½ΠΈΠ΅ΠΌ трСбуСтся ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ модСль ΠΊΠΎΠ΄Π° Π€Π°ΠΉΡ€Π°, для количСства ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹Ρ… сообщСний 128 ΠΈ Π΄Π»Ρ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΡƒΡŽΡ‰Π΅ΠΉ способности bs=2 (количСство исправляСмых ошибок) ΠΈ br = 3 (количСство ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… ошибок). Найти ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‰ΡƒΡŽ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ ΠΊΠΎΠ΄Π°.

Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ тСхничСскиС срСдства для Π΅Π³ΠΎ кодирования Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ схСмы.

Π’ Π·Π°ΠΏΠΈΡΠΊΠ΅ содСрТатся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ прилоТСния Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ тСкст ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹;

ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½Π°Ρ схСма ΠΊΠΎΠ΄Π΅Ρ€Π°;

Бписок элСмСнтов;

ВСхничСскоС Π·Π°Π΄Π°Π½ΠΈΠ΅.

1.2 ВСорСтичСскоС Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅

1.2.1 ΠžΠ±Ρ‰ΠΈΠ΅ понятия ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΡ

По ΡƒΡΠ»ΠΎΠ²ΠΈΡŽ Π·Π°Π΄Π°Ρ‡ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΈΡ‚ΡŒ схСму кодирования Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΉ. Π’Π°ΠΊΠΆΠ΅ трСбуСтся привСсти Ρ‚Π΅Ρ…Π½ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ схСму ΠΊΠΎΠ΄Π΅Ρ€Π° Π² ΡΠΎΠΎΡ‚вСтствии с Π·Π°Π΄Π°Π½ΠΈΠ΅ΠΌ Π½Π° ΠΊΡƒΡ€ΡΠΎΠ²ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ.

ΠšΠΎΠ΄Ρ‹ Π€Π°ΠΉΡ€Π° — это ΠΊΠΎΠ΄Ρ‹, ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΠ΅ ΠΈ ΠΈΡΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ ошибок. Под ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠΌ ошибок Π΄Π»ΠΈΠ½ΠΎΠΉ b ΠΏΠΎΠ½ΠΈΠΌΠ°ΡŽΡ‚ Ρ‚Π°ΠΊΠΎΠΉ Π²ΠΈΠ΄ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ ΠΏΠΎΠΌΠ΅Ρ…ΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΡ€Π°ΠΉΠ½ΠΈΠΌΠΈ разрядами, ΠΏΠΎΡ€Π°ΠΆΠ΅Π½Π½Ρ‹ΠΌΠΈ ΠΏΠΎΠΌΠ΅Ρ…Π°ΠΌΠΈ, содСрТится b-2 разряда. НапримСр, ΠΏΡ€ΠΈ b=5 ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ ΠΏΠΎΠΌΠ΅Ρ…ΠΈ, Ρ‚. Π΅. ΠΏΠ°ΠΊΠ΅Ρ‚ ошибок, ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π²ΠΈΠ΄: 10 001 (ΠΏΠΎΡ€Π°ΠΆΠ΅Π½Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π²Π° ΠΊΡ€Π°ΠΉΠ½ΠΈΡ… символа), 11 111 (ΠΏΠΎΡ€Π°ΠΆΠ΅Π½Ρ‹ всС символы), 10 111, 11 101, 11 011 (Π½Π΅ ΠΏΠΎΡ€Π°ΠΆΠ΅Π½ лишь ΠΎΠ΄ΠΈΠ½ символ), 10 011, 11 001, 10 101 (ΠΏΠΎΡ€Π°ΠΆΠ΅Π½Ρ‹ Ρ‚Ρ€ΠΈ символа). ΠŸΡ€ΠΈ любом Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅ Π½Π΅ΠΏΡ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌ условиСм ΠΏΠ°ΠΊΠ΅Ρ‚Π° Π΄Π°Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ‹ являСтся ΠΏΠΎΡ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΊΡ€Π°ΠΉΠ½ΠΈΡ… символов.

ΠšΠΎΠ΄Ρ‹ Π€Π°ΠΉΡ€Π° ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚ ошибок Π΄Π»ΠΈΠ½ΠΎΠΉ bs ΠΈ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚ ошибок Π΄Π»ΠΈΠ½ΠΎΠΉ br. Π’ ΠΊΠΎΠ΄Π°Ρ… Π€Π°ΠΉΡ€Π° понятиС ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠ³ΠΎ расстояния d Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ся.

Для ΠΊΠΎΠ΄ΠΎΠ² Π€Π°ΠΉΡ€Π°, ΠΊΠ°ΠΊ ΠΈ Π΄Π»Ρ всСх цикличСских ΠΊΠΎΠ΄ΠΎΠ² вводятся понятия ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΠΌΡ‹Ρ… ΠΈ Π½Π΅ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΠΌΡ‹Ρ… ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½ΠΎΠ², Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‰ΠΈΡ… ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½ΠΎΠ².

ΠœΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½ (ΠΏΠΎΠ»ΠΈΠ½ΠΎΠΌ), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π² Π²ΠΈΠ΄Π΅ произвСдСния ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½ΠΎΠ² Π½ΠΈΠ·ΡˆΠΈΡ… стСпСнСй, Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΠΌΡ‹ΠΌ (Π² Π΄Π°Π½Π½ΠΎΠΌ ΠΏΠΎΠ»Π΅), Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС — Π½Π΅ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΠΌΡ‹ΠΌ. НСприводимыС ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½Ρ‹ ΠΈΠ³Ρ€Π°ΡŽΡ‚ Ρ€ΠΎΠ»ΡŒ, ΡΡ…ΠΎΠ΄Π½ΡƒΡŽ с ΠΏΡ€ΠΎΡΡ‚Ρ‹ΠΌΠΈ числами Π² Ρ‚Π΅ΠΎΡ€ΠΈΠΈ чисСл. НСприводимыС ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½Ρ‹ P (X) ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π² Π²ΠΈΠ΄Π΅ дСсятичных ΠΈΠ»ΠΈ Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹Ρ… чисСл (10 011), Π»ΠΈΠ±ΠΎ Π² Π²ΠΈΠ΄Π΅ алгСбраичСского ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½Π°. ΠœΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½ Π² ΠΏΠΎΠ»Π΅ Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹Ρ… чисСл называСтся Π½Π΅ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΠΌΡ‹ΠΌ, Ссли ΠΎΠ½ Π΄Π΅Π»ΠΈΡ‚ся Π±Π΅Π· остатка Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° ΡΠ΅Π±Ρ ΠΈ Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ. Π’ ΠΎΡΠ½ΠΎΠ²Ρƒ цикличСских ΠΊΠΎΠ΄ΠΎΠ² ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΎ использованиС Π½Π΅ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½Π° P (X), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊ Ρ†ΠΈΠΊΠ»ΠΈΡ‡Π΅ΡΠΊΠΈΠΌ ΠΊΠΎΠ΄Π°ΠΌ называСтся ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‰ΠΈΠΌ.

ΠžΠ±Ρ€Π°Π·ΡƒΡŽΡ‰ΠΈΠΉ ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½ ΠΊΠΎΠ΄Π° Π€Π°ΠΉΡ€Π° Π  (Π₯)Ρ„ опрСдСляСтся ΠΈΠ· Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΡ:

Π  (Π₯)Ρ„ = Π  (Π₯) (Π₯c+1) (1.1)

Π³Π΄Π΅ Π  (Π₯) — Π½Π΅ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½ стСпСни l.

Из ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ° построСния ΠΊΠΎΠ΄Π° слСдуСт, Ρ‡Ρ‚ΠΎ

l? bs, (1.2)

c? bs +br-1. (1.3)

ΠŸΡ€ΠΈ этом с Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π΄Π΅Π»ΠΈΡ‚ΡŒΡΡ Π½Π°Ρ†Π΅Π»ΠΎ Π½Π° Ρ‡ΠΈΡΠ»ΠΎ Π΅:

Π΅=2l-1. (1.4)

НСприводимый ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½ Π  (Π₯) Π²Ρ‹Π±ΠΈΡ€Π°ΡŽΡ‚ ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ 1.1 согласно ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ (1.2), Π½ΠΎ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΡΠ»ΠΎΡΡŒ условиС (1.4). Π”Π»ΠΈΠ½Π° слова n Ρ€Π°Π²Π½Π° Π½Π°ΠΈΠΌΠ΅Π½ΡŒΡˆΠ΅ΠΌΡƒ ΠΎΠ±Ρ‰Π΅ΠΌΡƒ ΠΊΡ€Π°Ρ‚Π½ΠΎΠΌΡƒ чисСл с ΠΈ Π΅, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΡΡ‚ΠΎΠΌ случаС ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½ Π₯n+1 дСлится Π½Π° Π  (Π₯)Ρ„ Π±Π΅Π· остатка:

n=НОК (С, с). (1.6)

Число ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Ρ… символов:

m=c+l. (1.5)

Π’Π°Π±Π»ΠΈΡ†Π° 1.1. НСприводимыС ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½Ρ‹ ΠΈ ΠΈΡ… ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½Ρ‚Ρ‹

Π  (Π₯1)=Π₯+1>3>11

Π  (Π₯5)= Π₯5+Π₯3+Π₯2+Π₯+1>47>101 111

Π  (Π₯2)=Π₯2+Π₯+1>7>111

Π  (Π₯5)= Π₯5+Π₯4+Π₯2+Π₯+1>55>110 111

Π  (Π₯3)=Π₯3+Π₯+1>11>1011

Π  (Π₯5)= Π₯5+Π₯4+Π₯3+Π₯+1>59>111 011

Π  (Π₯3)= Π₯3+Π₯2+ 1>13>1101

Π  (Π₯5)= Π₯5+Π₯4+Π₯3+Π₯2+1>61>111 101

Π  (Π₯4)=Π₯4+Π₯+1>19>10 011

Π  (Π₯6)= Π₯6+Π₯+1>67>1 000 011

Π  (Π₯4)=Π₯4+Π₯3+1>25>11 001

Π  (Π₯7)= Π₯7+Π₯3+1>137>10 001 001

Π  (Π₯4)= Π₯4+Π₯3+ Π₯2+Π₯+1>31>11 111

Π  (Π₯8)= Π₯8+Π₯4+Π₯3+ Π₯2+1>285>100 011 101

Π  (Π₯5)= Π₯5+Π₯2+1>37>100 101

Π  (Π₯9)= Π₯9+Π₯4+1>1041>1 000 010 001

Π  (Π₯5)= Π₯5+Π₯3+1>41>101 001

Π  (Π₯10)= Π₯10+Π₯3+ 1>2057>10 000 001 001

ΠšΠΎΠ΄Ρ‹ Π€Π°ΠΉΡ€Π° ΡΠ²Π»ΡΡŽΡ‚ΡΡ помСхоустойчивыми ΠΊΠΎΠ΄Π°ΠΌΠΈ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ся для исправлСния ΠΈ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΡ ошибок, Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΏΠΎ ΠΊΠ°Π½Π°Π»Ρƒ связи. Π‘ΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄Π° ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΈ ΠΈΡΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ошибки обусловлСна Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ΠΌ Π² ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΌ словС ΠΏΠΎΠΌΠΈΠΌΠΎ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… разрядов ΠΈΠ·Π±Ρ‹Ρ‚ΠΎΡ‡Π½Ρ‹Ρ… (ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΡ‡Π½Ρ‹Ρ…) символов, значСния ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡŽΡ‚ΡΡ ΠΏΡ€ΠΈ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°ΠΌ. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ этих символов Π½Π° ΠΏΡ€ΠΈΠ΅ΠΌΠ½ΠΎΠΉ сторонС, Ρ‚Π°ΠΊΠΆΠ΅ выполняСмая ΠΏΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°ΠΌ, позволяСт ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΈ ΠΈΡΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ошибки.

Π’ ΠΊΠΎΠ΄Π°Ρ… Π€Π°ΠΉΡ€Π° каТдая комбинация кодируСтся ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ (Π² Π²ΠΈΠ΄Π΅ Π±Π»ΠΎΠΊΠ°) Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ k ΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ m ΡΠΈΠΌΠ²ΠΎΠ»Ρ‹ всСгда находятся Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… мСстах:

10 101 010 10 010

k m

n=m+k.

ΠŸΡ€ΠΈΡ‡Π΅ΠΌ слСдуСт ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π² Π΄Π°Π½Π½ΠΎΠΌ случаС ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ символов — Π±ΠΈΡ‚Ρ‹ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Π’. Π΅. ΠΎΠ΄ΠΈΠ½ символ — ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ прСдставлСн двумя способами: Π»ΠΈΠ±ΠΎ «1», Π»ΠΈΠ±ΠΎ «0».

Π’ ΠΎΠ±Ρ‰Π΅ΠΌ случаС, Ссли Π·Π°Π΄Π°Π½Π½ΡƒΡŽ ΠΊΠΎΠ΄ΠΎΠ²ΡƒΡŽ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΡŽ Q (X) ΡƒΠΌΠ½ΠΎΠΆΠΈΡ‚ΡŒ Π½Π° ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‰ΠΈΠΉ ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½ P (X), получится, ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‰ΠΈΠΉ Ρ‚Π΅ΠΌΠΈ ΠΈΠ»ΠΈ ΠΈΠ½Ρ‹ΠΌΠΈ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΌΠΈ свойствами Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΠΈ ΠΎΡ‚ Π²Ρ‹Π±ΠΎΡ€Π° P (X). Однако Π² ΡΡ‚ΠΎΠΌ ΠΊΠΎΠ΄Π΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ символы m Π±ΡƒΠ΄ΡƒΡ‚ располагаСтся Π² ΡΠ°ΠΌΡ‹Ρ… Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹Ρ… мСстах ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΉ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ. Π’Π°ΠΊΠΎΠΉ ΠΊΠΎΠ΄ Π½Π΅ ΡΠ²Π»ΡΠ΅Ρ‚ся систСматичСским, Ρ‡Ρ‚ΠΎ затрудняСт Π΅Π³ΠΎ ΡΡ…Π΅ΠΌΠ½ΡƒΡŽ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ. Π‘ΠΈΡ‚ΡƒΠ°Ρ†ΠΈΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ, Ссли ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ символы ΠΏΡ€ΠΈΠΏΠΈΡΠ°Ρ‚ΡŒ Π² ΠΊΠΎΠ½Π΅Ρ† ΠΊΠΎΠ΄Π°.

Π“Ρ€ΡƒΠΏΠΏΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹ с Ρ‚Π°ΠΊΠΎΠΉ структурой принято ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Ρ‚ΡŒ (n, k) ΠΊΠΎΠ΄Π°ΠΌΠΈ, отраТая Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Π² Π½Π°Π·Π²Π°Π½ΠΈΠΈ ΠΊΠΎΠ΄Π° ΠΎΠ±Ρ‰ΡƒΡŽ Π΄Π»ΠΈΠ½Ρƒ ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠ³ΠΎ слова ΠΈ ΠΊΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… символов, Π½Π° ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… рассчитан ΠΊΠΎΠ΄.

ΠŸΡ€ΠΈ описании цикличСских ΠΊΠΎΠ΄ΠΎΠ² n Ρ€Π°Π·Ρ€ΡΠ΄Π½Ρ‹Π΅ ΠΊΠΎΠ΄ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ Π² Π²ΠΈΠ΄Π΅ ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½ΠΎΠ² Ρ„ΠΈΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π₯. ΠŸΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ Ρƒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π₯ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚ Π½ΠΎΠΌΠ΅Ρ€Π°ΠΌ разрядов (начиная с Π½ΡƒΠ»Π΅Π²ΠΎΠ³ΠΎ), Π° ΠΊΠΎΡΡ„Ρ„ΠΈΡ†ΠΈΠ΅Π½Ρ‚Π°ΠΌΠΈ ΠΏΡ€ΠΈ Π₯ Π΄Π»Ρ Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹Ρ… ΠΊΠΎΠ΄ΠΎΠ² Π±ΡƒΠ΄ΡƒΡ‚ 0 ΠΈ 1. НапримСр, кодовая комбинация 1011 Π² Π²ΠΈΠ΄Π΅ ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½Π° Π·Π°ΠΏΠΈΡˆΠ΅Ρ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

Π§Π»Π΅Π½Ρ‹ с Π½ΡƒΠ»Π΅Π²Ρ‹ΠΌΠΈ коэффициСнтами ΠΏΡ€ΠΈ записи ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½Π° ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ, ΠΈ ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ:

Наибольшая ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ Π₯ Π² ΡΠ»Π°Π³Π°Π΅ΠΌΠΎΠΌ с Π½Π΅Π½ΡƒΠ»Π΅Π²Ρ‹ΠΌ коэффициСнтом называСтся ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒΡŽ ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½Π°. ВсС дСйствия Π½Π°Π΄ ΠΊΠΎΠ΄ΠΎΠ²Ρ‹ΠΌΠΈ комбинациями сводятся дСйствиям Π½Π°Π΄ ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½Π°ΠΌΠΈ [2, 3].

Π‘ΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄ΠΎΠ² Π€Π°ΠΉΡ€Π° ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΈ ΠΈΡΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ошибки связана с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½Π½Ρ‹Π΅ ΠΊΠΎΠ΄ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ Π±ΡƒΠ΄ΡƒΡ‚ Π΄Π΅Π»ΠΈΡ‚ΡŒΡΡ Π½Π° g (x) Π±Π΅Π· остатка, Π° Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½Π½Ρ‹Π΅ ΠΊΠΎΠ΄ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ Π±ΡƒΠ΄ΡƒΡ‚ Π΄Π°Π²Π°Ρ‚ΡŒ остатки, ΠΏΠΎ Π²ΠΈΠ΄Ρƒ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚ΡŒ ΠΈ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΊΡƒ.

Π˜Ρ‚Π°ΠΊ, исходя ΠΈΠ· Π²Ρ‹ΡˆΠ΅ΠΎΠΏΠΈΡΠ°Π½Π½ΠΎΠ³ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ Π΄Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΡƒΡŽ ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ модСль Ρ€Π΅ΡˆΠ°Π΅ΠΌΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ.

1.2.2 ΠžΠ±Ρ‰Π°Ρ матСматичСская модСль ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ поставлСнной Π·Π°Π΄Π°Ρ‡ΠΈ

По ΡƒΡΠ»ΠΎΠ²ΠΈΡŽ Π·Π°Π΄Π°Ρ‡ΠΈ для дСкодирования ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½Ρ‹Ρ… ΠΊΠΎΠ΄ΠΎΠ²Ρ‹Ρ… ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚Π΅ΠΉ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠΎΠ΄Π°ΠΌΠΈ Π€Π°ΠΉΡ€Π°. Π­Ρ‚ΠΎ Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠΎΠ΄Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΈ ΠΈΡΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ ошибок. Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ числа разрядов Π² Π²ΠΈΠ΄Π΅ ΠΊΠΎΠ΄ΠΎΠ² Π€Π°ΠΉΡ€Π°, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ провСсти ряд вычислСний. ВрСбуСтся Π½Π°ΠΉΡ‚ΠΈ остаток, ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΡΡŽΡ‰ΠΈΠΉ ряду Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ. Π­Ρ‚ΠΈ трСбования ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Ρ€Π°Π·ΠΈΡ‚ΡŒ Π² Π²ΠΈΠ΄Π΅ нСравСнств ΠΈ ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ (1.1) — (1.5). Π­Ρ‚ΠΎ ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ матСматичСская модСль для задания Π½Π° ΠΊΡƒΡ€ΡΠΎΠ²ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ.

Π­Ρ‚ΠΎΡ‚ ΠΊΠΎΠ΄ являСтся ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ эффСктивных цикличСских ΠΊΠΎΠ΄ΠΎΠ². Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ обнаруТСния ΠΈ ΠΈΡΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΡ практичСски Π»ΡŽΠ±Ρ‹Ρ… ошибок ΠΏΡ€ΠΈ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΌΠ°Π»ΠΎΠΉ избыточности ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΊΠΎΠ΄Π°ΠΌΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ простота тСхничСской Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ кодирования ΠΈ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ Π΄Π΅Π»Π°Π΅Ρ‚ эти ΠΊΠΎΠ΄Ρ‹ ΡˆΠΈΡ€ΠΎΠΊΠΎ распространСнными. Π’ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΈΠ·Π±Ρ‹Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ опрСдСляСтся ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Ρ… символов m ΠΊ Π΄Π»ΠΈΠ½Π΅ слова:

И = m/n,

Π³Π΄Π΅ n=m+k.

Π’Π°ΠΊ, для ΠΊΠΎΠ΄Π° Π€Π°ΠΉΡ€Π° (120, 108) с ΠΈΡΠΏΡ€Π°Π²Π»ΡΡŽΡ‰Π΅ΠΉ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒΡŽ bs=4 ΠΈΠ·Π±Ρ‹Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ: И=12/120=0,1.

Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, для ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Ρ€Π°Π·Π½ΠΎΠ²ΠΈΠ΄Π½ΠΎΡΡ‚ΠΈ цикличСских ΠΊΠΎΠ΄ΠΎΠ² — ΠΊΠΎΠ΄ΠΎΠ² Π‘Π§Π₯ (127, 99) (взято Π±Π»ΠΈΠ·ΠΊΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ n ΠΊ Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Π½Π½ΠΎΠΌΡƒ Ρ€Π°Π½Π΅Π΅ ΠΊΠΎΠ΄Ρƒ Π€Π°ΠΉΡ€Π°) с Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅ ΠΈΡΠΏΡ€Π°Π²Π»ΡΡŽΡ‰Π΅ΠΉ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒΡŽ ΠΈΡΠΏΡ€Π°Π²Π»ΡΡŽΡ‰Π°Ρ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π²Π½Π°: И=28/127=0,22, Ρ‚. Π΅. Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π²Ρ‹ΡˆΠ΅, Ρ‡Π΅ΠΌ Ρƒ ΠΊΠΎΠ΄Π° Π€Π°ΠΉΡ€Π°.

Π­Ρ‚ΠΎ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ: ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ ошибки, находящиСся Π² ΠΎΠ΄Π½ΠΎΠΌ мСстС, ΠΏΡ€ΠΎΡ‰Π΅, Ρ‡Π΅ΠΌ ошибки, рассрСдоточСнныС ΠΏΠΎ Π²ΡΠ΅ΠΉ Π΄Π»ΠΈΠ½Π΅ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ.

1.2.3 ΠŸΡ€ΠΈΠΌΠ΅Ρ€ построСния ΠΊΠΎΠ΄ΠΎΠ² Π€Π°ΠΉΡ€Π°

Рассмотрим Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅.

ΠŸΡƒΡΡ‚ΡŒ трСбуСтся ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ Π€Π°ΠΉΡ€Π° для bs=4, br=5.

Π˜ΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚ bs=4 — Π·Π½Π°Ρ‡ΠΈΡ‚ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΎΠ΄Π½Ρƒ ΠΈΠ· ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΉ ошибок, ΠΏΠΎΡ€Π°ΠΆΠ΅Π½Π½Ρ‹Ρ… ΠΏΠΎΠΌΠ΅Ρ…Π°ΠΌΠΈ: 1111, 1101, 1011 ΠΈ 1001. Π’ Ρ‚ΠΎΠΆΠ΅ врСмя этот ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚ΡŒ ΠΎΠ΄Π½Ρƒ ΠΈΠ· ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΉ Π² ΠΏΡΡ‚ΡŒ символов, рассмотрСнных Ρ€Π°Π½Π΅Π΅: 10 001, 11 111 ΠΈ Ρ‚. Π΄.

На ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΈΠΈ (1.2) ΠΈ (1.3) c?8 ΠΈ l?4. По Ρ‚Π°Π±Π»ΠΈΡ†Π΅ 1.1 Π½Π°Ρ…ΠΎΠ΄ΠΈΠΌ Π½Π΅ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½ Ρ‡Π΅Ρ‚Π²Π΅Ρ€Ρ‚ΠΎΠΉ стСпСни: Π  (Π₯)=Π₯4+Π₯+1.

Богласно (1.4), Π΅=24-1=15. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π΄Π»ΠΈΠ½Π° ΠΊΠΎΠ΄Π° n=15*8=120. Из (1.5) число ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Ρ… символов m=8+4=12, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π² Π΄Π°Π½Π½ΠΎΠΌ случаС ΠΎΠ½ΠΎ Ρ€Π°Π²Π½ΠΎ стСпСни ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½Π°. Π’ ΠΈΡ‚ΠΎΠ³Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΊΠΎΠ΄ (120, 108). Π˜Π·Π±Ρ‹Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, Ссли ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΈΡΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΡƒΡŽ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ, Π½Π΅Π²Π΅Π»ΠΈΠΊΠ°: И=12/120=0,1.

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΎΡ‡Π½Ρ‹Π΅ символы ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΈ Π΄Π΅Π»Π΅Π½ΠΈΠΈ исходного ΠΊΠΎΠ΄Π° с ΠΏΡ€ΠΈΠΏΠΈΡΠ°Π½Π½Ρ‹ΠΌΠΈ m Π½ΡƒΠ»ΡΠΌΠΈ Π½Π° ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‰ΠΈΠΉ ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½ ΠΊΠΎΠ΄Π° Π€Π°ΠΉΡ€Π°. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Ρ€Π°Π·ΠΈΡ‚ΡŒ Π² Π²ΠΈΠ΄Π΅ Ρ„ΠΎΡ€ΠΌΡƒΠ»Ρ‹:

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, остаток ΠΎΡ‚ Π΄Π΅Π»Π΅Π½ΠΈΡ R (x) ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΡ‡Π½Ρ‹Π΅ символы. ΠŸΡ€ΠΈΠΏΠΈΡΡ‹Π²Π°Π½ΠΈΠ΅ m Π½ΡƒΠ»Π΅ΠΉ соотвСтствуСт ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΡŽ Π½Π° Ρ…m. Π˜Ρ‚Π°ΠΊ, ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΊΠΎΠ΄:

F (x) = G (x) Β· xm + R (x)

1.2.4 ΠœΠ°Ρ‚Ρ€ΠΈΡ‡Π½Π°Ρ запись ΠΊΠΎΠ΄Π°

Полная ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‰Π°Ρ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° цикличСского ΠΊΠΎΠ΄Π° составляСтся ΠΈΠ· Π΄Π²ΡƒΡ… ΠΌΠ°Ρ‚Ρ€ΠΈΡ†: Π΅Π΄ΠΈΠ½ΠΈΡ‡Π½ΠΎΠΉ (ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ k ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌ разрядам) ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ (ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΡ‡Π½Ρ‹ΠΌ разрядам). По ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‰Π΅ΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π΅ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°ΡΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ всС ΠΊΠΎΠ΄ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ.

НахоТдСниС элСмСнтов Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹.

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ находят ΠΏΡƒΡ‚Π΅ΠΌ дСлСния Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹ с Π½ΡƒΠ»ΡΠΌΠΈ Π½Π° Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΉ ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½ Π  (Π₯) ΠΈ Π²Ρ‹ΠΏΠΈΡΡ‹Π²Π°Π½ΠΈΡ всСх ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹Ρ… остатков. ΠŸΡ€ΠΈ этом Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΡΠΎΠ±Π»ΡŽΠ΄Π΅Π½Ρ‹ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ условия:

Π°) число остатков Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°Π²Π½ΠΎ числу ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… символов k;

Π±) для Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ ΠΏΡ€ΠΈΠ³ΠΎΠ΄Π½Ρ‹ лишь остатки с Π²Π΅ΡΠΎΠΌ W, Π½Π΅ ΠΌΠ΅Π½ΡŒΡˆΠΈΠΌ числа ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹Ρ… ошибок r, Ρ‚. Π΅. Π² Π΄Π°Π½Π½ΠΎΠΌ случаС Π½Π΅ ΠΌΠ΅Π½ΡŒΡˆΠΈΠΌ 3 (W?3); Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ обнаруТиваСтся Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ Ρ‚Ρ€Π΅Ρ… ошибок.

Из ΡƒΡΠ»ΠΎΠ²ΠΈΠΉ Π°) ΠΈ Π±) опрСдСляСтся количСство Π½ΡƒΠ»Π΅ΠΉ, приписываСмых ΠΊ Π΅Π΄ΠΈΠ½ΠΈΡ†Π΅ ΠΏΡ€ΠΈ Π΄Π΅Π»Π΅Π½ΠΈΠΈ Π΅Π΅ Π½Π° ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½ Π  (Π₯);

Π²) Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ элСмСнты Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ ΡΠ²Π»ΡΡŽΡ‚ΡΡ для Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹ΠΌΠΈ символами, Ρ‚ΠΎ Ρ‡ΠΈΡΠ»ΠΎ разрядов Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ Ρ€Π°Π²Π½ΠΎ числу ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Ρ… символов m. ВслСдствиС Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½Π° Π²Ρ‹Π±ΠΈΡ€Π°ΡŽΡ‚ Ρ€Π°Π²Π½ΠΎΠΉ m, число разрядов Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ Ρ€Π°Π²Π½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ стСпСни ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½Π°. Π Π°Π·Ρ€ΡΠ΄Π½ΠΎΡΡ‚ΡŒ остатка Ρ€Π°Π²Π½Π° стСпСни ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½Π°.

БоставлСниС ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‰Π΅ΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹.

Π‘Π΅Ρ€ΡƒΡ‚ Ρ‚Ρ€Π°Π½ΡΠΏΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ Π΅Π΄ΠΈΠ½ΠΈΡ‡Π½ΡƒΡŽ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ ΠΈ ΡΠΏΡ€Π°Π²Π° ΠΏΡ€ΠΈΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ ΠΊ Π½Π΅ΠΉ элСмСнты Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹.

НахоТдСниС всСх ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΉ цикличСского ΠΊΠΎΠ΄Π°. Π­Ρ‚ΠΎ достигаСтся суммированиСм ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ 2 всСвозмоТных сочСтаний строк ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‰Π΅ΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹.

1.3 ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠ°Ρ модСль

Π˜ΡΡ…ΠΎΠ΄Ρ ΠΈΠ· Ρ‚СхничСского задания, bs=2, br=3, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΊΠΎΠ΄ способСн ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ²Π°Ρ‚ΡŒ Ρ‚Ρ€ΠΈ ошибки, Π° ΠΈΡΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π²Π΅. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Π²Ρ‹ΡˆΠ΅ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹Π΅ Ρ„ΠΎΡ€ΠΌΡƒΠ»Ρ‹

Π  (Π₯)Ρ„ = Π  (Π₯) (Π₯s+1)

Π³Π΄Π΅ Π  (Π₯) — Π½Π΅ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½ стСпСни l.

l? bs,

c? bs +br-1.

ΠŸΡ€ΠΈ этом с Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π΄Π΅Π»ΠΈΡ‚ΡŒΡΡ Π½Π°Ρ†Π΅Π»ΠΎ Π½Π° Ρ‡ΠΈΡΠ»ΠΎ Π΅:

Π΅=2l-1.

Π­Ρ‚ΠΈ уравнСния ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ ΡΠ²Π»ΡΡ‚ΡŒΡΡ матСматичСской модСлью Ρ€Π΅ΡˆΠ°Π΅ΠΌΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ. ΠŸΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ тСхничСского задания:

l? 2 (возьмСм l=2).

с? 2+3−1?4 (возьмСм c=5).

e=22-1=3 (5 Π½Π΅ Π΄Π΅Π»ΠΈΡ‚ся Π½Π°Ρ†Π΅Π»ΠΎ Π½Π° 3).

Π  (Π₯)Ρ„ = Π  (Π₯2) (Π₯5+1).

Π’ΠΎΠ·ΡŒΠΌΠ΅ΠΌ Π  (Π₯2) = Ρ…2+x+1, Ρ‚ΠΎΠ³Π΄Π°

На ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΈΠΈ Ρ„ΠΎΡ€ΠΌΡƒΠ»Ρ‹ (1.6) ΠΎΠ±Ρ‰Π΅Π΅ число символов n Ρ€Π°Π²Π½ΠΎ: n=НОК (3, 5)=15. ΠŸΡ€ΠΈΡ‡Π΅ΠΌ l, c, e Π±Ρ‹Π»ΠΈ вычислСны Π½Π° ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΈΠΈ Ρ„ΠΎΡ€ΠΌΡƒΠ» (см Π²Ρ‹ΡˆΠ΅). Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, l=2, c=5, e=3. Π˜Ρ‚Π°ΠΊ, ΠΈΠ· (1.5) слСдуСт, Ρ‡Ρ‚ΠΎ число ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΡ‡Π½Ρ‹Ρ… символов: m=2+5=7. Π’ΠΎ Π΅ΡΡ‚ΡŒ число ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… символов: n=15−7=8, Π§Ρ‚ΠΎ ΠΊΠ°ΠΊ Ρ€Π°Π· Π½Π°ΠΌ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ 128 сообщСний, учитывая, Ρ‡Ρ‚ΠΎ Π½ΡƒΠ»Π΅Π²ΠΎΠ΅ состояниС выбрасываСтся ΠΈΠ· Ρ€Π°ΡΡΠΌΠΎΡ‚рСния. Π˜Ρ‚Π°ΠΊ, ΠΈΠΌΠ΅Π΅ΠΌ ΠΊΠΎΠ΄ (15,8). ΠŸΡ€ΠΈ этом Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ c/e Π½Π΅ Π΄Π΅Π»ΠΈΡ‚ся Π½Π°Ρ†Π΅Π»ΠΎ. Π’Ρ‹Π±Π΅Ρ€Π΅ΠΌ ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‰ΠΈΠΉ ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½ для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π€Π°ΠΉΡ€Π°. Π˜ΡΡ…ΠΎΠ΄Ρ ΠΈΠ· ΡƒΡΠ»ΠΎΠ²ΠΈΡ построСнной матСматичСской ΠΌΠΎΠ΄Π΅Π»ΠΈ:

ΠŸΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ€ΡƒΠΊΠΎΠ²ΠΎΠ΄ΡΡ‚ΡΠ²ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌΠΈ: ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½Π° Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ мСньшС числа ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Ρ… символов (Π»ΡƒΡ‡ΡˆΠ΅, Ссли l=m); Ссли Π½Π΅ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΠΌΡ‹Ρ… ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½ΠΎΠ² Ρ‚Π°ΠΊΠΎΠΉ стСпСни нСсколько, Ρ‚ΠΎ Π²Ρ‹Π±ΠΈΡ€Π°ΡŽΡ‚ самый ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΠΉ. ИмСнно исходя ΠΈΠ· ΡΡ‚ΠΈΡ… ΠΏΡ€Π°Π²ΠΈΠ», для Π΄Π°Π½Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π±Ρ‹Π» Π²Ρ‹Π±Ρ€Π°Π½ Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½ PΡ„(X)=11 100 111. Π˜Ρ‚Π°ΠΊ, для получСния m ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΡ‡Π½Ρ‹Ρ… символов Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ произвСсти Π΄Π΅Π»Π΅Π½ΠΈΠ΅ исходного слова Π½Π° ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‰ΠΈΠΉ ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½ ΠΊΠΎΠ΄Π° Π€Π°ΠΉΡ€Π°. ΠŸΡ€ΠΈ этом частичноС суммированиС ΠΏΡ€ΠΈ Π΄Π΅Π»Π΅Π½ΠΈΠΈ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ 2.

1.4 ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‰Π΅ΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹

Из Π²Ρ‹ΡˆΠ΅ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Ρ… расчСтов ΠΌΡ‹ Π·Π½Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ число ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… символов (Π±ΠΈΡ‚) Ρ€Π°Π²Π½ΠΎ 8. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ Π΅Π΄ΠΈΠ½ΠΈΡ‡Π½ΠΎΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚ 8. Число ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΡ‡Π½Ρ‹Ρ… символов = 7, ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ, ΠΈΠΌΠ΅ΡŽΡ‰ΡƒΡŽ 8 строк ΠΈ 7 столбцов.

НайдСм Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ:

100 000 000 000 000|11100111

11 100 111 |;

01 100 1110 1-ΠΉ остаток

01 000 0110 4-ΠΉ остаток

01 100 0010 5-ΠΉ остаток

0100 1010 6-ΠΉ остаток

1 001 0100 7-ΠΉ остаток

01 110 011 8-ΠΉ остаток

Π˜Ρ‚Π°ΠΊ, Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° ΠΈΠΌΠ΅Π΅Ρ‚ Π²ΠΈΠ΄:

m1

m2

m3

m4

m5

m6

m7

Боставим ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‰ΡƒΡŽ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ:

k1

k2

k3

k4

k5

k6

k7

k8

m1

m2

m3

m4

m5

m6

m7

НахоТдСниС всСх ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΉ цикличСского достигаСтся суммированиСм ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ 2 всСвозмоТных сочСтаний строк ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‰Π΅ΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹.

Π’ Π΄Π°Π½Π½ΠΎΠΉ Π³Π»Π°Π²Π΅ Π±Ρ‹Π»Π° освСщСна тСорСтичСскиС основы для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ΠΈ курсовой Ρ€Π°Π±ΠΎΡ‚Ρ‹. Π‘Ρ‹Π»ΠΈ описаны структура ΠΈ ΡΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠ° ΠΊΠΎΠ΄ΠΎΠ² Π€Π°ΠΉΡ€Π° ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ кодирования. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π±Ρ‹Π»Π° ΠΏΠΎΠ΄Π²Π΅Π΄Π΅Π½Π° Π±Π°Π·Π° для ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ поставлСнной Π·Π°Π΄Π°Ρ‡ΠΈ Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ программирования.

2. ВСхничСская рСализация ΠΊΠΎΠ΄Π΅Ρ€Π°

2.1 ΠœΠΎΠ΄ΡƒΠ»ΡŒΠ½Π°Ρ структура ΠΊΠΎΠ΄Π΅Ρ€Π° ΠΈ Π΅Π³ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°

ΠžΡΠ½ΠΎΠ²Ρƒ ΠΊΠΎΠ΄ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… устройств Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹Ρ… цикличСских ΠΊΠΎΠ΄ΠΎΠ² ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ рСгистры сдвига с ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΌΠΈ связями, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒ ΠΊΠ°ΠΊ ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅, Ρ‚Π°ΠΊ ΠΈ Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½ΠΎΠ² с ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ коэффициСнтов ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ 2. Π’Π°ΠΊΠΈΠ΅ рСгистры Ρ‚Π°ΠΊΠΆΠ΅ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΌΠ½ΠΎΠ³ΠΎΡ‚Π°ΠΊΡ‚Π½Ρ‹ΠΌΠΈ Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹ΠΌΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ схСмами ΠΈ Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹ΠΌΠΈ ΠΊΠΎΠ΄ΠΎΠ²Ρ‹ΠΌΠΈ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°ΠΌΠΈ Π₯Π°Ρ„Ρ„ΠΌΠ΅Π½Π°. Они состоят ΠΈΠ· ΡΡ‡Π΅Π΅ΠΊ памяти, сумматоров ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ 2 ΠΈ ΡƒΡΡ‚ройств умноТСния Π½Π° ΠΊΠΎΡΡ„Ρ„ΠΈΡ†ΠΈΠ΅Π½Ρ‚Ρ‹ ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½ΠΎΠ² мноТитСля ΠΈΠ»ΠΈ дСлитСля. Π’ ΡΠ»ΡƒΡ‡Π°Π΅ Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹Ρ… ΠΊΠΎΠ΄ΠΎΠ² для умноТСния Π½Π° ΠΊΠΎΡΡ„Ρ„ΠΈΡ†ΠΈΠ΅Π½Ρ‚, Ρ€Π°Π²Π½Ρ‹ΠΉ 1, трСбуСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ связи Π² ΡΡ…Π΅ΠΌΠ΅. Если коэффициСнт Ρ€Π°Π²Π΅Π½ 0, Ρ‚ΠΎ ΡΠ²ΡΠ·ΡŒ отсутствуСт. Π‘Π΄Π²ΠΈΠ³ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π² Ρ€Π΅Π³ΠΈΡΡ‚Ρ€Π΅ осущСствляСтся ΠΈΠΌΠΏΡƒΠ»ΡŒΡΠ°ΠΌΠΈ, ΠΏΠΎΡΡ‚ΡƒΠΏΠ°ΡŽΡ‰ΠΈΠΌΠΈ с Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ³Π°ΡŽΡ‰ΠΈΡ… ΠΈΠΌΠΏΡƒΠ»ΡŒΡΠΎΠ². На Π²Ρ…ΠΎΠ΄ устройств ΠΏΠΎΡΡ‚ΡƒΠΏΠ°ΡŽΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ коэффициСнты ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½ΠΎΠ², ΠΏΡ€ΠΈΡ‡Π΅ΠΌ начиная с ΠΊΠΎΡΡ„Ρ„ΠΈΡ†ΠΈΠ΅Π½Ρ‚Π° ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π² ΡΡ‚Π°Ρ€ΡˆΠ΅ΠΉ стСпСни.

Как ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π»ΠΎΡΡŒ Π²Ρ‹ΡˆΠ΅, ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ цикличСского ΠΊΠΎΠ΄Π° (Π² Π΄Π°Π½Π½ΠΎΠΌ случаС ΠΊΠΎΠ΄Π° Π€Π°ΠΉΡ€Π°) состоит ΠΈΠ· Π΄Π²ΡƒΡ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ: умноТСния ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° G (X) Π½Π° ΠΎΠ΄Π½ΠΎΡ‡Π»Π΅Π½ Xm ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ дСлСния этого произвСдСния Π½Π° Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΉ ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‰ΠΈΠΉ ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½ P (X). ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ Π² ΠΎΡΡ‚Π°Ρ‚ΠΊΠ΅ ΠΎΡ‚ Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ символы ΠΏΡ€ΠΈΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ ΠΊ ΠΊΠΎΠ΄ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠΉ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΊΠΎΠ΄ΠΈΡ€ΡƒΡŽΡ‰Π΅Π΅ устройство Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΎΠ²ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ умноТСния ΠΈ Π΄Π΅Π»Π΅Π½ΠΈΡ.

Рассмотрим ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΡƒ построСния ΠΊΠΎΠ΄ΠΈΡ€ΡƒΡŽΡ‰Π΅Π³ΠΎ устройства. ΠŸΡƒΡΡ‚ΡŒ трСбуСтся ΡΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ схСму ΠΊΠΎΠ΄ΠΈΡ€ΡƒΡŽΡ‰Π΅Π³ΠΎ устройства для ΠΌΠ½ΠΎΠ³ΠΎΡ‡Π»Π΅Π½Π°

P (X)=X5+X2+X+1.

Π‘Ρ…Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄ΠΈΡ€ΡƒΡŽΡ‰Π΅Π³ΠΎ устройства ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Π½Π° Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 2.1.

Рис. 2.1. Π‘Ρ…Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄ΠΈΡ€ΡƒΡŽΡ‰Π΅Π³ΠΎ устройства Π‘Ρ…Π΅ΠΌΠ°, изобраТСнная Π½Π° Ρ€ΠΈΡ. 2.1, Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ. Π’ ΠΈΡΡ…ΠΎΠ΄Π½ΠΎΠΌ состоянии ΠΊΠ»ΡŽΡ‡ К1 находится Π² ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ 1, Π° ΠΊΠ»ΡŽΡ‡ К2 Π·Π°ΠΌΠΊΠ½ΡƒΡ‚. ВсС ΠΏΠΎΠ΄Π»Π΅ΠΆΠ°Ρ‰ΠΈΠ΅ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ символы, начиная со ΡΡ‚Π°Ρ€ΡˆΠ΅Π³ΠΎ разряда, ΠΏΠΎΡΡ‚ΡƒΠΏΠ°ΡŽΡ‚ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Π½Π° Π²Ρ‹Ρ…ΠΎΠ΄ ΠΈ Ρ‡Π΅Ρ€Π΅Π· сумматор Π½Π° Π²Ρ…ΠΎΠ΄Π΅ Π² ΡΡ…Π΅ΠΌΡƒ кодирования. ПослС Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠΉΠ΄Π΅Ρ‚ послСдний символ k, ΠΊΠ»ΡŽΡ‡ К1 ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡΡ Π² ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ 2, Π° ΠΊΠ»ΡŽΡ‡ К2 размыкаСтся. ПослС этого рСгистр Π΄Π΅Π»Π°Π΅Ρ‚ m шагов, Ρ€Π°Π²Π½Ρ‹Ρ… числу ячССк, Ρ‚. Π΅. восСмь шагов. И Π²Π΅ΡΡŒ остаток поступаСт Π½Π° Π²Ρ‹Ρ…ΠΎΠ΄. Π­Ρ‚ΠΎΡ‚ остаток прСдставляСт собой ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ символы, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π·Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌΠΈ символами.

ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½Π°Ρ схСма Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄ΠΈΡ€ΡƒΡŽΡ‰Π΅Π³ΠΎ устройства прСдставлСна Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ….

Аппаратная рСализация ΠΊΠ»ΡŽΡ‡Π΅ΠΉ Π±Ρ‹Π»Π° ΠΎΠΏΡƒΡ‰Π΅Π½Π° ΠΈ Π·Π°ΠΌΠ΅Π½Π΅Π½Π° схСмотСхничСским ΡƒΠΏΡ€ΠΎΡ‰Π΅Π½Π½Ρ‹ΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ SA1 ΠΈ SA2. Π’ ΡΡ…Π΅ΠΌΠ΅ эти ΠΊΠ»ΡŽΡ‡ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΡ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ Π² Ρ‚ΠΎΠΉ ΠΆΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, ΠΊΠ°ΠΊ ΠΈ Π½Π° Ρ€ΠΈΡ 1.3.

Поясним Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π²Ρ‹Π²ΠΎΠ΄ΠΎΠ² Ρ€Π°Π·ΡŠΠ΅ΠΌΠ°:

XT1: Π’Π½Π΅ΡˆΠ½ΠΈΠΉ Π“Π’Π˜ (Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ Ρ‚Π°ΠΊΡ‚ΠΎΠ²Ρ‹Ρ… ΠΈΠΌΠΏΡƒΠ»ΡŒΡΠΎΠ²).

XT2: Π’Ρ…ΠΎΠ΄ ΠΊΠΎΠ΄ΠΈΡ€ΡƒΡŽΡ‰Π΅Π³ΠΎ устройства. ΠŸΠΎΠ΄Π°Ρ‡Π° Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… ΠΈΠΌΠΏΡƒΠ»ΡŒΡΠΎΠ².

XT3: Π’Ρ‹Ρ…ΠΎΠ΄ ΠΊΠΎΠ΄ΠΈΡ€ΡƒΡŽΡ‰Π΅Π³ΠΎ устройства.

XT4: +5 Π’ΠΎΠ»ΡŒΡ‚

XT5: ΠΎΠ±Ρ‰ΠΈΠΉ. (0 Π’ΠΎΠ»ΡŒΡ‚) ΠŸΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ элСмСнтов, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ Π² ΠΊΠΎΠ΄Π΅Ρ€Π΅ — прСдставлСн Ρ‚Π°ΠΊΠΆΠ΅ Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ 2.1.

2.2 Π’Ρ‹Π±ΠΎΡ€ микросхСм для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ схСмы ΠΊΠΎΠ΄Π΅Ρ€Π°

Π’Π°Π±Π»ΠΈΡ†Π° 2.1. ΠŸΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ элСмСнтов схСмы

Поз. обозн.

НаимСнованиС

ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ

DD1, DD2

КР531ВМ8

DD3, DD4

КР1554Π›ΠŸ5

Для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ схСмы памяти ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ микросхСмы сСрии КР531ВМ8, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ содСрТат ΠΏΠΎ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ D — Ρ‚Ρ€ΠΈΠ³Π³Π΅Ρ€Π°, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΡ… ΠΎΠ±Ρ‰ΡƒΡŽ Ρ†Π΅ΠΏΡŒ питания. Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ‚Ρ€ΠΈΠ³Π³Π΅Ρ€Π° Π΅ΡΡ‚ΡŒ Π²Ρ‹Ρ…ΠΎΠ΄Ρ‹ Q ΠΈ Q. Для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ слоТСния ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ 2 ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ микросхСмы сСрии КР1554Π›ΠŸ5. Они содСрТат ΠΏΠΎ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ логичСских элСмСнта ΠΈΡΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π΅Π΅ Π˜Π›Π˜.

Π’ Π΄Π°Π½Π½ΠΎΠΉ Π³Π»Π°Π²Π΅ прСдставлСно описаниС Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΊΠΎΠ΄ΠΈΡ€ΡƒΡŽΡ‰Π΅Π³ΠΎ устройства, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ схСмы ΠΊΠΎΠ΄ΠΈΡ€ΡƒΡŽΡ‰Π΅Π³ΠΎ устройства. ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΎ Π΅Π΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅, Π° Ρ‚Π°ΠΊΠΆΠ΅ прСдставлСн Π½Π°Π±ΠΎΡ€ микросхСм, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ схСмы ΠΊΠΎΠ΄Π΅Ρ€Π°.

3. ОписаниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… срСдств, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Ρ… Π² Ρ…ΠΎΠ΄Π΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

3.1 Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° систСмы

Для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ΠΈ прСдлагаСтся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄. Π­Ρ‚ΠΎ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ пСрспСктивный ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΊ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ любой Π·Π°Π΄Π°Ρ‡ΠΈ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, язык MSVΠ‘++ 6.0 — это ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰ΠΈΠΉ Π² ΡΠ΅Π±Ρ ΡƒΠ΄ΠΎΠ±Π½Ρ‹Π΅ срСдства Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ этого ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π°.

ΠžΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΈΠΌΠ΅Π΅Ρ‚ прСимущСства ΠΏΠ΅Ρ€Π΅Π΄ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ, ΠΏΡ€Π΅ΠΆΠ΄Π΅ всСго, ΠΈΠ·-Π·Π° Π΅Π³ΠΎ наглядности, структурированности: ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, логичСски связанныС ΠΌΠ΅ΠΆΠ΄Ρƒ собой, ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½Π΅Π½Ρ‹ Π² ΠΊΠ»Π°ΡΡΡ‹. Π‘ΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ классами доступно Ρ‡Π΅Ρ€Π΅Π· ΠΈΠΌΠ΅Π½Π° этих классов.

Π’ Ρ†Π΅Π»ΠΎΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» ΡˆΠΈΡ€ΠΎΠΊΠΎΠ΅ распространСниС ΠΈΠ·-Π·Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ наслСдования, инкапсуляции ΠΈ ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌΠ°. ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹Π΅ классы ΠΎΡ‚ ΠΊΠ»Π°ΡΡΠΎΠ²-ΠΏΡ€Π°Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»Π΅ΠΉ ΠΌΠΎΠ³ΡƒΡ‚ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, поэтому Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ старых ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Π½Π΅ Ρ‚рСбуСтся. ΠšΠ»Π°ΡΡΡ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, Ρ‚Π°ΠΊ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Ρ‡Ρ‚ΠΎ максимально ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΏΡ€ΠΈ объСдинСнии логичСски связанных Π΄Π°Π½Π½Ρ‹Ρ…. Один класс ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ мноТСство ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹Ρ… классов, Ρ‡Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½ΠΎ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния экономии Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ Π·Π°Π½ΠΎΠ²ΠΎ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ Π½Π΅ ΠΏΡ€ΠΈΡ…одится.

ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π²Ρ‹Π±ΠΎΡ€ этого ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΎΠΏΡ€Π°Π²Π΄Π°Π½, пСрспСктивСн ΠΈ ΡƒΠ΄ΠΎΠ±Π΅Π½ для дальнСйшСго Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

ВозмоТности MSVΠ‘++ 6.0 ΠΏΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡŽ Π·Π°Π΄Π°Ρ‡, ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‰ΠΈΡ… Ρ€Π°Π±ΠΎΡ‚Ρƒ с ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π½Π° ΡΡ‚ΠΎΠΌ языкС программирования ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ практичСски любой Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ. ΠŸΠΎΡΡ‚Π°Π²Π»Π΅Π½Π½ΡƒΡŽ Π·Π°Π΄Π°Ρ‡Ρƒ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ слоТСния ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ 2. Π’ ΡΠ·Ρ‹ΠΊΠ΅ Π‘ Π΅ΡΡ‚ΡŒ срСдство для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹. Π‘Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ Π΄Π²Π° осущСствляСтся ΠΏΡ€ΠΈ использовании ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°. Он ΡΠ²Π»ΡΠ΅Ρ‚ся эквивалСнтом ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° mod Π² ΡΠ·Ρ‹ΠΊΠ΅ программирования Pascal ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ слоТСниС ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ Π΄Π²Π° справа ΠΈ ΡΠ»Π΅Π²Π° стоящих ΠΎΡ‚ Π½Π΅Π³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ². ΠžΠ±Ρ‰Π°Ρ структура этой ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

(Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚) = (ΠžΠΏΠ΅Ρ€Π°Π½Π΄1) ^ (ΠžΠΏΠ΅Ρ€Π°Π½Π΄2)

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ слоТСния ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π² Π²ΠΈΠ΄Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹

Π’Π°Π±Π»ΠΈΡ†Π° 3.1. Π‘Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ Π΄Π²Π°

ΠžΠΏΠ΅Ρ€Π°Π½Π΄ 1

ΠžΠΏΠ΅Ρ€Π°Π½Π΄ 2

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚

Для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒΡΡ массивы для хранСния Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΡ‹Ρ… для Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…: CODE — массив разрядов, входящих Π² ΡΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅, Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ (9 разрядов — ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅). И ΠΌΠ°ΡΡΠΈΠ² G_CODE для Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ сообщСния (9 разрядов — ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅, 5 разрядов — ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΡ‡Π½Ρ‹Π΅).

ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ Ρ‚Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ справку ΠΎΠ± Π°Π²Ρ‚ΠΎΡ€Π΅, ΠΎ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ с Π½Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ.

3.2 Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅, Ρ„ΠΎΡ€ΠΌΠ° прСдставлСния Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ²

Π’Ρ…ΠΎΠ΄Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ являСтся ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π΄ΠΎΠ»ΠΆΠ΅Π½ ввСсти Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ΠΌ ΠΌΡ‹ΡˆΠΈ Π½Π° ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ поля (Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ это Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½ΠΎ понятными ChackBox-Π°ΠΌΠΈ, Ρ‚. Π΅. Π³Π°Π»ΠΎΡ‡ΠΊΠ°ΠΌΠΈ Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Ρ… полях. ΠŸΠΎΡΡ‚Π°Π²Π»Π΅Π½Π½Π°Ρ Π³Π°Π»ΠΎΡ‡ΠΊΠ° — ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ 1 Π² ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Π±ΠΈΡ‚Π°Ρ….). Π­Ρ‚ΠΈ поля ΠΏΡ€ΠΎΠ½ΡƒΠΌΠ΅Ρ€ΠΎΠ²Π°Π½Ρ‹ Π² ΡΠΎΠΎΡ‚вСтствиС ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½ΠΎΠΌΡƒ Π½Π°ΠΌ Ρ€Π°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ Π±ΠΈΡ‚ Π²Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ сообщСния. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ прСдставлСны Π² Π²ΠΈΠ΄Π΅ ΠΈΡ‚ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ сообщСния ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΊΠΎΠ΄ΠΎΠ² Π€Π°ΠΉΡ€Π°. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ содСрТит строку ΠΈΠ· 8-ΠΌΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΈ 7-ΠΌΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΡ‡Π½Ρ‹Ρ… символов.

3.3 БпСцификация Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π² Ρ†Π΅Π»ΠΎΠΌ

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° выполняСт ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:

1). ΠšΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π°Π΄Π°Π½Π½ΠΎΠΉ Π±ΠΈΡ‚ΠΎΠ²ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠ΄ΠΎΠ² Π€Π°ΠΉΡ€Π°;

2) Π‘Ρ…Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ прСдставляСт Π΄Π²Π΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ — Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΈ Π΅Π΄ΠΈΠ½ΠΈΡ‡Π½ΡƒΡŽ.

3) Π’Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ динамичСски Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ колирования, Ρ‚. Π΅. достаточно Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π²Ρ…ΠΎΠ΄Π½ΠΎΠ΅ сообщСниС ΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ‚ΡƒΡ‚ ΠΆΠ΅ просчитываСтся ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ся Π½Π° ΡΠΊΡ€Π°Π½.

Π˜Ρ‚Π°ΠΊ, Π²Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅:

BOOL information[8] - массив, ΠΊΡƒΠ΄Π° заносятся Π±ΠΈΡ‚Ρ‹ сообщСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΊΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ.

BOOL m[8] - массив для хранСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹, Π·Π°Ρ€Π°Π½Π΅Π΅ посчитанной для ΠΊΠΎΠ΄Π΅Ρ€Π°. ΠœΠ°Ρ‚Ρ€ΠΈΡ†Π° ΠΈΠΌΠ΅Π΅Ρ‚ 8 строк, Ρ‚. ΠΊ. Ρƒ Π½Π°Ρ 8 ΠΈΠ½Ρ„ΠΎΡ€ΠΌΡ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Π±ΠΈΡ‚ ΠΈ 7 столбцов, Ρ‚. ΠΊ. Ρƒ Π½Π°Ρ 7 ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΡ‡Π½Ρ‹Ρ… символов.

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅:

BOOL pro[7] - 7 ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΡ‡Π½Ρ‹Ρ… символов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Ρ‹ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ кодирования.

ΠŸΡ€ΠΈ создании ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π±ΠΈΠ»ΠΎ сдСлано Π½ΠΎΠ²ΠΎΠ²Π²Π΅Π΄Π΅Π½ΠΈΠ΅, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ — ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° написана ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π½Π° API. Π­Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΎ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ ΡΠΎΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ EXE-Ρ„Π°ΠΉΠ». А Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π’Π°ΠΊΠΎΠ΅ Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π±Ρ‹Π»ΠΎ сдСлано с Ρ†Π΅Π»ΡŒΡŽ получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΠΏΡ‹Ρ‚Π° Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π’.ΠΊ. Π½Π° API Π±Ρ‹Π» сдСлан ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ интСрфСйс со ΡΠ²ΠΎΠΈΠΌΠΈ особСнностями, Ρ‚ΠΎ Ρ‚Скст ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ получился ΠΎΠ±ΡˆΠΈΡ€Π½Ρ‹ΠΌ, содСрТащий большоС ΠΊΠΎΠ»-Π²ΠΎ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ, классов, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…. Π’ ΡΠ²ΡΠ·ΠΈ с ΡΡ‚ΠΈΠΌ, с Ρ€Π°ΡΡ‡Π΅Ρ‚Π½ΠΎΠΌ Π·Π°Π΄Π°Π½ΠΈΠΈ Π½Π΅ Π±Ρ‹Π»Π° ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π° спСцификация Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ.

3.4 БистСмныС трСбования

486dx2−66

16 Mb RAM

2Mb Video Ram

Screen Resolution 800*600*16bit

HDD — 1 Mb

OS Windows 98, ΠœΠ•, Π₯Π , Windows NT 4.0 ΠΈΠ»ΠΈ Π²Ρ‹ΡˆΠ΅.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° соотвСтствуСт трСбованиям тСхничСского задания. Она ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ ΠΊΠΎΠ΄ΠΈΡ€ΡƒΠ΅Ρ‚ Π²Π²Π΅Π΄Π΅Π½Π½ΡƒΡŽ Π΄Π²ΠΎΠΈΡ‡Π½ΡƒΡŽ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΊΠΎΠ΄ΠΎΠ². Π‘ΠΎΠ·Π΄Π°Π½Π½Ρ‹ΠΉ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ друТСствСнный интСрфСйс — понятСн ΠΈ ΠΏΡ€ΠΎΡΡ‚. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ быстро Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΈ ΠΏΡ€ΠΈ нСобходимости внСсти Π² Π½Π΅Π΅ ΠΏΠΎΠΏΡ€Π°Π²ΠΊΠΈ.

Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΡˆΠΈΡ€ΠΎΠΊΠΎ использовались элСмСнты Π•Π΄ΠΈΠ½ΠΎΠ³ΠΎ ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΠ° (Common User Access), Π° Ρ‚Π°ΠΊΠΆΠ΅ элСмСнты Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ TOP DOWN.

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ написанныС для Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π±ΡƒΠ΄ΡƒΡ‚ Π² Π΄Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ…. НаписаниС Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ принСсло Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ ΠΏΠΎΠ»ΡŒΠ·Ρƒ Π² ΠΎΡΠ²ΠΎΠ΅Π½ΠΈΠΈ структурного программирования ΠΈ ΠΊΡƒΡ€ΡΠ° «Π’Сория ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ».

4. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΈΠ²Π½Π°Ρ Ρ‡Π°ΡΡ‚ΡŒ

4.1 ВСстированиС

ВСстированиС — это процСсс, посрСдством ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ провСряСтся ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π•Π³ΠΎ Ρ†Π΅Π»ΡŒ — ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² ΡΠΎΠΎΡ‚вСтствии с ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π½Ρ‹ΠΌΠΈ спСцификациями.

ΠŸΡ€ΠΈ тСстировании ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΠ»Π°ΡΡŒ Ρ€Π°Π±ΠΎΡ‚Π° ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ модуля Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ всСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π² Ρ†Π΅Π»ΠΎΠΌ. Π‘Ρ‹Π»ΠΎ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΎ нСсколько тСстирований, послС ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΠ»Π°ΡΡŒ Π΄ΠΎΡ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ ΡƒΡΡ‚Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ошибок. ВСстированиС ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΠ»ΠΎΡΡŒ ΠΈΠ· Ρ€Π°ΡΡ‡Π΅Ρ‚Π° Π½Π° Ρ‚ΠΎ, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½Π΅ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ нСпрСдсказуСмы Π² Ρ€Π°Π±ΠΎΡ‚Π΅ с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ.

На ΠΏΠ΅Ρ€Π²ΠΎΠΌ этапС тСстирования вводилось нСсколько Π½ΠΎΠ²Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, ΠΈ Ρ Π½ΠΈΠΌΠΈ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΠ»ΠΈΡΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ этого тСстирования ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ модуля, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰Π΅Π³ΠΎ Π²Π²ΠΎΠ΄ Π΄Π°Π½Π½Ρ‹Ρ… (ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΠ»Π°ΡΡŒ Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π° ΠΈ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΏΠ°ΠΌΡΡ‚ΡŒ),

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ тСстирования ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΈ ΡƒΡΡ‚ΠΎΠΉΡ‡ΠΈΠ²ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

ВСстированиС ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ соотвСтствуСт тСхничСскому заданию. Π’Π΅Ρ€Π½ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° кодирования.

ΠŸΡ€ΠΈ тСстировании ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π°Π΅Ρ‚ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ задания ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ (Π² Π΄Π°Π½Π½ΠΎΠΌ случаС примСнялся ΠΌΠ΅Ρ‚ΠΎΠ΄ Ρ‡Π΅Ρ€Π½ΠΎΠ³ΠΎ ящика):

ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅ΠΌ Ρ‚Π΅ΡΡ‚ΠΎΠ²ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ с Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹ΠΌΠΈ ΠΊΠΎΠ΄Π°ΠΌΠΈ, Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡΠΌΠΈ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ соотвСтствиС ΠΌΠ΅ΠΆΠ΄Ρƒ Π²Ρ…ΠΎΠ΄Π½Ρ‹ΠΌΠΈ ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ.

Π’Π°Π±Π»ΠΈΡ†Π° 4.1. ВСстированиС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

Π’Π²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΎΡ‡Π½Ρ‹Π΅ символы

Код с ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΡ‡Π½Ρ‹ΠΌΠΈ символами

4.2 ОписаниС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса

ПослС запуска ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° ΡΠΊΡ€Π°Π½Π΅ появляСтся Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ, содСрТащСС 4 поля:

1) ПолС Π²Π²ΠΎΠ΄Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Π±ΠΈΡ‚.

2) ПолС, ΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‰Π΅Π΅ Π΅Π΄ΠΈΠ½ΠΈΡ‡Π½ΡƒΡŽ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ.

3) ПолС, ΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‰Π΅Π΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ.

4) ПолС, ΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‰Π΅Π΅ Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ сообщСниС.

4.3 Π˜Π½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ

Для Π²Π²ΠΎΠ΄Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Π±ΠΈΡ‚ — Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π² ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄Π° ΠΏΡ€ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π³Π°Π»ΠΎΡ‡ΠΊΠΈ Π² Ρ‚Π΅Ρ… Π±ΠΈΡ‚Π°Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ = 1. Π’Π°ΠΌ, Π³Π΄Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π½ΡƒΠ»ΠΈ, ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ пустым.

ПослС Π²Π²ΠΎΠ΄Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ — ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° автоматичСски просчитываСт Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠ΄ ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Π΅Π³ΠΎ Π² ΠΏΠΎΠ»Π΅ ΠΎΡ‚Π²Π΅Ρ‚Π°. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ поля ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ.

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ тСстирования Π±Ρ‹Π»ΠΈ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½Ρ‹ ошибки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ впослСдствии Π±Ρ‹Π»ΠΈ устранСны. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ тСстирования Π±Ρ‹Π»ΠΎ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° являСтся работоспособной. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΈ ΡΡ‚Ρ€ΠΎΠΈΡ‚ ΠΊΠΎΠ΄ Π€Π°ΠΉΡ€Π°.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΏΡ€ΠΎΠ΄Π΅Π»Π°Π½Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π±Ρ‹Π»Π° построСна матСматичСская модСль ΠΏΠΎΠΌΠ΅Ρ…ΠΎΠ·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½ΠΎΠ³ΠΎ Π³Ρ€ΡƒΠΏΠΏΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π€Π°ΠΉΡ€Π° (15, 8), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΊΠΎΠ΄ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ ΠΏΡ€ΠΈΠ΅ΠΌΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½Π° ΠΏΠ°Ρ‡ΠΊΠ° ошибок Π΄Π»ΠΈΠ½ΠΎΠΉ 3 ΠΈ ΠΈΡΠΏΡ€Π°Π²Π»Π΅Π½Π° ΠΏΠ°Ρ‡ΠΊΠ° ошибок Π΄Π»ΠΈΠ½ΠΎΠΉ 2 (bs = 2, br = 3). Π”Π°Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ ΠΊΠΎΠ΄ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΠΎΠ΅ сообщСниС ΠΈΠ· 8 Π±ΠΈΡ‚, количСство Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… сообщСний — 128.

ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠ°Ρ модСль Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° прСдставляСт собой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡƒΡŽ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ языка MSVC++ 6.0. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π±Ρ‹Π»Π° Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π½Π° API, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΎ ΠΎΡΠ²ΠΎΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ способ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса. БоставлСнная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² ΡΠΎΠΎΡ‚вСтствии с Ρ‚СхничСским Π·Π°Π΄Π°Π½ΠΈΠ΅ΠΌ ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Π²ΠΎΠ΄ΠΈΠΌΡ‹Π΅ сообщСния.

Π’Π°ΠΊΠΆΠ΅ Π² ΠΊΡƒΡ€ΡΠΎΠ²ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π΅ Π±Ρ‹Π»Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½Π°Ρ схСма ΠΊΠΎΠ΄Π΅Ρ€Π°, Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π² ΠΊΠΎΠ΄ Π€Π°ΠΉΡ€Π° Π² ΡΠΎΠΎΡ‚вСтствии с Ρ‚СхничСским Π·Π°Π΄Π°Π½ΠΈΠ΅ΠΌ.

ПолноС описаниС ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΏΠΎΡΡΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ рисунками, Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ расчСтами содСрТатся Π² Π΄Π°Π½Π½ΠΎΠΉ расчСтно-ΠΏΠΎΡΡΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ запискС. ГрафичСская Ρ‡Π°ΡΡ‚ΡŒ записки — ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½Π°Ρ схСма — Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π° Π² ΡΠΎΠΎΡ‚вСтствии с Ρ‚рСбованиями Π•Π‘ΠšΠ” ΠΈ Π²Ρ‹Π½Π΅ΡΠ΅Π½Π° Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. А Ρ‚Π°ΠΊΠΆΠ΅ ΠΊ Ρ€Π°ΡΡ‡Π΅Ρ‚Π½ΠΎ-ΠΏΠΎΡΡΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ запискС ΠΏΡ€ΠΈΠ»Π°Π³Π°ΡŽΡ‚ΡΡ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ тСкст ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, список элСмСнтов, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… для построСния ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ схСмы, ΠΈ Ρ‚СхничСскоС Π·Π°Π΄Π°Π½ΠΈΠ΅.

На ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΈΠΈ Π²Ρ‹ΡˆΠ΅ΠΈΠ·Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π° ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π²Ρ‹Π²ΠΎΠ΄, Ρ‡Ρ‚ΠΎ Π·Π°Π΄Π°Ρ‡Π°, поставлСнная Π² Ρ‚СхничСском Π·Π°Π΄Π°Π½ΠΈΠΈ, — Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π°.

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅

Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ тСкст ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

#include «MyWWindow.h»

#include «WContener.h»

#include «WBottom.h» // Added by ClassView

#include «WLineSeparator.h»

#include «WBox.h»

#include «WChackBox.h»

class MyMainWindow: public MyWWindow

{

public:

bool timer;

WContener MainWndMCC;

void CloseMyWindow ();

virtual void DrawWindow (/*WContener mcc,*/HWND hwnd, HDC hdc);

virtual void DrawMyControls (/*WContener *mcc, HDC hdc*/HWND hwnd, HDC hdc);

virtual void OnMouseMoveMyctr (HWND hwnd, UINT uMsg, LPARAM lParam);

virtual void OnMouseLBUp (UINT msg, LPARAM lParam);

virtual void MinimizeWnd ();

//WLineSeparator b;

WBottom CloseBt; // (WContener*, int, int, int, int, bool, char*, WFunc);

WBottom MinimizeBt;

WBottom File;

WLineSeparator LeftLine;

WLineSeparator UnderMenuLine;

WChackBox inf[8];

WChackBox infout[8];

BOOL information[8];

BOOL pro[7];

BOOL m[8] [7];

WBox In;

WBox Out;

WBox Matrt;

WBox Matrm;

WContener WndMCC;

MyMainWindow ();

MyMainWindow (HWND);

virtual void MyMainWindow: OnBottonPress (int);

virtual ~MyMainWindow ();

};

#endif //! defined (AFX_MYMAINWINDOW_H__583A9BDB_9B1A_49BB_A851_14 0263AA24BD__INCLUDED_)

// MyMainWindow. cpp: implementation of the MyMainWindow class.

//

//////////////////////////////////////////////////////////////////////

#include «stdafx.h»

#include «MyMainWindow.h»

#include «MyWWindow.h»

#include «WContener.h»

#include «globalsdef.h»

#include «Windowsx.h»

#include «resource.h»

#include «Wingdi.h»

#include «Windows.h»

#include «WLineSeparator.h»

#include «WBottom.h»

#include «WBox.h»

//Windows.h

// #include «gam.h»

//////////////////////////////////////////////////////////////////////

// Construction/Destruction

//////////////////////////////////////////////////////////////////////

MyMainWindow: MyMainWindow ()

{

m[0] [0]=(BOOL) 1;

m[0] [1]=(BOOL) 1;

m[0] [2]=(BOOL) 0;

m[0] [3]=(BOOL) 0;

m[0] [4]=(BOOL) 1;

m[0] [5]=(BOOL) 1;

m[0] [6]=(BOOL) 1;

m[1] [0]=(BOOL) 0;

m[1] [1]=(BOOL) 1;

m[1] [2]=(BOOL) 0;

m[1] [3]=(BOOL) 1;

m[1] [4]=(BOOL) 0;

m[1] [5]=(BOOL) 0;

m[1] [6]=(BOOL) 1;

m[2] [0]=(BOOL) 1;

m[2] [1]=(BOOL) 0;

m[2] [2]=(BOOL) 1;

m[2] [3]=(BOOL) 0;

m[2] [4]=(BOOL) 0;

m[2] [5]=(BOOL) 1;

m[2] [6]=(BOOL) 0;

m[3] [0]=(BOOL) 1;

m[3] [1]=(BOOL) 0;

m[3] [2]=(BOOL) 0;

m[3] [3]=(BOOL) 0;

m[3] [4]=(BOOL) 0;

m[3] [5]=(BOOL) 1;

m[3] [6]=(BOOL) 1;

m[4] [0]=(BOOL) 1;

m[4] [1]=(BOOL) 1;

m[4] [2]=(BOOL) 0;

m[4] [3]=(BOOL) 0;

m[4] [4]=(BOOL) 0;

m[4] [5]=(BOOL) 0;

m[4] [6]=(BOOL) 1;

m[5] [0]=(BOOL) 0;

m[5] [1]=(BOOL) 1;

m[5] [2]=(BOOL) 0;

m[5] [3]=(BOOL) 0;

m[5] [4]=(BOOL) 1;

m[5] [5]=(BOOL) 0;

m[5] [6]=(BOOL) 1;

m[6] [0]=(BOOL) 1;

m[6] [1]=(BOOL) 0;

m[6] [2]=(BOOL) 0;

m[6] [3]=(BOOL) 1;

m[6] [4]=(BOOL) 0;

m[6] [5]=(BOOL) 1;

m[6] [6]=(BOOL) 0;

m[7] [0]=(BOOL) 1;

m[7] [1]=(BOOL) 1;

m[7] [2]=(BOOL) 1;

m[7] [3]=(BOOL) 0;

m[7] [4]=(BOOL) 0;

m[7] [5]=(BOOL) 1;

m[7] [6]=(BOOL) 1;

WndMCC. SetNomber (25);

MinimizeBt. SetBottom (&WndMCC, MAINWND_WIDTH-18*2−4*2, 1, 18,18, TRUE, «_»);

CloseBt. SetBottom (&WndMCC, MAINWND_WIDTH-18−4, 1, 18,18, TRUE, «x»);

In. SetBox (&WndMCC, 20,40,500,40, TRUE, TRUE, «Π’Π²ΠΎΠ΄ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… символов (Π±ΠΈΡ‚):»);

In. SetBox (&WndMCC, 20,300,500,40, TRUE, TRUE, «Π’Ρ‹Π²ΠΎΠ΄ Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ сообщСния:»);

int i=50;

inf[0]. SetChackBox (&WndMCC, 40+i*0,50,10, TRUE, TRUE, «7», FALSE);

inf[1]. SetChackBox (&WndMCC, 40+i*1,50,10, TRUE, TRUE, «6», FALSE);

inf[2]. SetChackBox (&WndMCC, 40+i*2,50,10, TRUE, TRUE, «5», FALSE);

inf[3]. SetChackBox (&WndMCC, 40+i*3,50,10, TRUE, TRUE, «4», FALSE);

inf[4]. SetChackBox (&WndMCC, 40+i*4,50,10, TRUE, TRUE, «3», FALSE);

inf[5]. SetChackBox (&WndMCC, 40+i*5,50,10, TRUE, TRUE, «2», FALSE);

inf[6]. SetChackBox (&WndMCC, 40+i*6,50,10, TRUE, TRUE, «1», FALSE);

inf[7]. SetChackBox (&WndMCC, 40+i*7,50,10, TRUE, TRUE, «0», FALSE);

for (int j=0; j<=7; j++)

{

inf[j]. MARK=FALSE;

information[j]=FALSE;

}

Matrt. SetBox (&WndMCC, 20,100,230,180, TRUE, TRUE, «Π•Π΄ΠΈΠ½ΠΈΡ‡Π½Π°Ρ трансп. ΠΌΠ°Ρ‚Ρ€.»);

Matrt. SetBox (&WndMCC, 290,100,230,180, TRUE, TRUE, «ΠœΠ°Ρ‚Ρ€ΠΈΡ†Π° Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΉ:»);

//Box1. NomberOfBitmaps=10;

//timer=FALSE;

//inf. SetChackBox (&WndMCC, 40,320,250, TRUE, FALSE, «Do`nt ask this question agen…», TRUE);

//Box2. SetChackBox (&WndMCC, 40,340,250, TRUE, TRUE, «Enabled clock in the right khoner of the screen», TRUE);

}

MyMainWindow: MyMainWindow (HWND hwnd)

{

// void (*f)();

//f=CloseMyWindow;

myhwnd=hwnd;

//MainWndMCC (8);

// (__cdecl*) (void) qq;

// (__cdecl *) (void) qqq;

// (this->CloseMyWindow);

}

MyMainWindow:~MyMainWindow ()

{

}

void MyMainWindow: DrawWindow (HWND hwnd, HDC hdc)

{

//PAINTSTRUCT ps;

// HDC hdc;

RECT crect, rect;

HBRUSH brush;

GetClientRect (hwnd, &crect);

rect = crect;

crect.top=KEWL_SZ_CAPTION_HEIGHT;

rect.bottom = KEWL_SZ_CAPTION_HEIGHT;

// ???

if (FALSE/*GetActiveWindow ()≠ hwnd*/)

{for (WORD i = 0; i <= WndMCC. count; i++){WndMCC.ctr[i]. enabled=FALSE;}}

else {for (WORD i = 0; i <= WndMCC. count; i++){WndMCC.ctr[i]. enabled=TRUE;}}

//hdc = BeginPaint (hwnd, &ps);

brush = CreateSolidBrush (CLRMainWindowBackGround);

TRIVERTEX vert[2];

GRADIENT_RECT gRect;

if (GetActiveWindow () == hwnd)

{

vert. x = 0;

vert. y = 0;

vert. Red = 0×0000;

vert. Green = 0×0000;

vert. Blue = 0xff00;

vert. Alpha = 0×0000;

vert. x = MAINWND_WIDTH;

vert. y = KEWL_SZ_CAPTION_HEIGHT;

vert. Red = 0xcc00;

vert. Green = 0xbb00;

vert. Blue = 0xee00;

vert. Alpha = 0×1800;

}

else

{

vert. x = 0;

vert. y = 0;

vert. Red = 0×4400;

vert. Green = 0×4400;

vert. Blue = 0×4400;

vert. Alpha = 0×0000;

vert. x = MAINWND_WIDTH;

vert. y = KEWL_SZ_CAPTION_HEIGHT;

vert. Red = 0xaa00;

vert. Green = 0xaa00;

vert. Blue = 0xaa00;

vert. Alpha = 0×1800;

}

gRect. UpperLeft = 0;

gRect. LowerRight = 1;

GradientFill (hdc, vert, 2,&gRect, 1, GRADIENT_FILL_RECT_H);

FillRect (hdc, &crect, brush);

DeleteObject (brush);

//brush = CreateSolidBrush ((GetActiveWindow () == hwnd)? KEWL_CLR_CAPTION_ACTIVE:KEWL_CLR_CAPTION_INACTIVE);

//FillRect (hdc, &rect, brush);

//DeleteObject (brush);

rect.left=rect.left +2;

rect.top=rect.top +2;

SetBkMode (hdc, TRANSPARENT);

//SetTextColor (hdc, RGB (148,178,255));

SetTextColor (hdc, RGB (40,40,40));

//rect.left=rect.left +1;

//rect.top=rect.top +1;

DrawText (hdc, GAM_MAINWND_CAPTION, -1, &rect, DT_CENTER | DT_VCENTER);

rect.left=rect.left -2;

rect.top=rect.top -2;

SetTextColor (hdc, (GetActiveWindow () == hwnd)? KEWL_CLR_TITLE_ACTIVE:KEWL_CLR_TITLE_INACTIVE);

//SetBkColor (hdc, (GetActiveWindow () == hwnd)? KEWL_CLR_CAPTION_ACTIVE:KEWL_CLR_CAPTION_INACTIVE);

DrawText (hdc, GAM_MAINWND_CAPTION, -1, &rect, DT_CENTER | DT_VCENTER);

}

void MyMainWindow: DrawMyControls (/*WContener *mcc, HDC hdc*/HWND hwnd, HDC hdc)

{

int k, ii;

// транспонированная ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°

for (k = 0; k<=7; k++)

{

for (int e=0; e<=7; e++)

if (e == (7-k))

{

DrawMyText (hwnd, hdc, 15*e+70,120+k*15,10, TRUE, «1»);

}

else

{

DrawMyText (hwnd, hdc, 15*e+70,120+k*15,10, TRUE, «0»);

}

}

// Π’Ρ‹Π²ΠΎΠ΄ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹

for (k = 0; k<=7; k++)

{

for (int e=0; e<=6; e++)

if (m[k] [e] == 1)

{

DrawMyText (hwnd, hdc, 12*e+330,130+k*12,10, TRUE, «1»);

}

else if (m[k] [e] == 0)

{

DrawMyText (hwnd, hdc, 12*e+330,130+k*12,10, TRUE, «0»);

}

}

//

for (k = 0; k<=7; k++)

{

if (information[k] == TRUE)

{

DrawMyText (hwnd, hdc, 15*k+30,315,10, TRUE, «1»);

}

else if (information[k] == FALSE)

{

DrawMyText (hwnd, hdc, 15*k+30,315,10, TRUE, «0»);

}

}

for (ii=0; ii<=6; ii++) {pro[ii]=0;} // ΠžΡ‡ΠΈΡΡ‚ΠΊΠ°

for (ii=0; ii<=7; ii++)

{

if (information [ii]==TRUE)

{

for (k=0; k<=6; k++)

{

pro[k]=((BOOL) pro[k]) ^ ((BOOL) (m [7-ii] [k]));

}

}

;

}

for (k = 0; k<=6; k++)

{

if (pro[k] == TRUE)

{

DrawMyText (hwnd, hdc, 15*(k+11)+50,315,10, TRUE, «1»);

}

else if (pro[k] == FALSE)

{

DrawMyText (hwnd, hdc, 15*(k+11)+50,315,10, TRUE, «0»);

}

}

/*

UpdateWindow (

hwnd // handle to window

);

*/

SIZE ts;

for (WORD i = 0; i <= WndMCC. count; i++)

switch (WndMCC.ctr[i]. type)

{

// ******

case MC_BUTTON:

DrawBotton (hwnd, hdc,&WndMCC.ctr[i]);

break;

case MC_LINE_SEPARATOR_VERT:

DrawLineSeparator (hwnd, hdc, WndMCC. ctr[i]. x, WndMCC. ctr[i]. y, WndMCC. ctr[i]. UD, 2, WndMCC. ctr[i]. visible, WndMCC. ctr[i]. enabled, WndMCC. ctr[i]. ACTIVATED, WndMCC. ctr[i]. hilight, ««);

break;

case MC_LINE_SEPARATOR_HOR:

DrawLineSeparator (hwnd, hdc, WndMCC. ctr[i]. x,

WndMCC.ctr[i].y, WndMCC. ctr[i]. LR, 1,

WndMCC.ctr[i]. visible, WndMCC. ctr[i]. enabled,

WndMCC.ctr[i].ACTIVATED, WndMCC. ctr[i]. hilight,

WndMCC.ctr[i].text);

//DrawLineSeparator (hwnd, hdc, 210,220,110,2, TRUE, TRUE, TRUE, TRUE, «WAV options»);

break;

case MC_BOX:

DrawBox (hwnd, hdc, WndMCC. ctr[i]. x, WndMCC. ctr[i]. y, WndMCC. ctr[i]. LR, WndMCC. ctr[i]. UD,

WndMCC.ctr[i].visible, WndMCC. ctr[i]. enabled,

WndMCC.ctr[i].ACTIVATED, WndMCC. ctr[i]. hilight, WndMCC. ctr[i]. text);

break;

case MC_CHACKBOX:

DrawChackBox (hwnd, hdc, WndMCC. ctr[i]. x, WndMCC. ctr[i]. y, WndMCC. ctr[i]. LR, WndMCC. ctr[i]. visible, WndMCC. ctr[i]. enabled,

WndMCC.ctr[i].ACTIVATED, WndMCC. ctr[i]. hilight, WndMCC. ctr[i]. text, WndMCC. ctr[i]. MARK);

break;

}

}

void MyMainWindow: OnMouseMoveMyctr (HWND hwnd, UINT uMsg, LPARAM lParam)

{

POINT pt;

pt.x = GET_X_LPARAM (lParam);

pt.y = GET_Y_LPARAM (lParam);

for (WORD i = 0; i < WndMCC. count; i++)

if ((WndMCC.ctr[i]. RedrawOnMouseMove == TRUE) /*| (WndMCC.ctr[i]. RedrawOnMouseMove == FALSE) */)

{

if (PtInRect (&((WndMCC.ctr[i]).area), pt) && WndMCC. ctr[i]. enabled)

{

if ((! WndMCC. ctr[i]. hilight) /*|((timer==FALSE)& WndMCC. ctr[i]. type==7)/*| (WndMCC.ctr[i]. ANIMATION==FALSE)*/)

{

/*

if (WndMCC.ctr[i]. type==7)

{

WndMCC.ctr[i].ANIMATION=TRUE;

WndMCC.ctr[i].NBitmap=0;

SetTimer (hwnd, IDT_TIMER1,50, (TIMERPROC) NULL);

timer=TRUE;

}

SetTimer (hwnd, // handle to main window

IDT_TIMER1, // timer identifier

10 000, // 10-second interval

(TIMERPROC) NULL); // no timer callback

*/

WndMCC.ctr[i]. hilight = TRUE;

InvalidateRect (hwnd, &WndMCC.ctr[i]. area, FALSE);

}

}

else

if (WndMCC.ctr[i]. hilight)

{

/*

if (WndMCC.ctr[i]. type==7)

{

WndMCC.ctr[i].ANIMATION=FALSE;

WndMCC.ctr[i].NBitmap=0;

KillTimer (hwnd, IDT_TIMER1);

timer=FALSE;

}

WndMCC.ctr[i]. hilight = FALSE;

InvalidateRect (hwnd, &WndMCC.ctr[i]. area, FALSE);

}

}

}

void MyMainWindow: OnMouseLBUp (UINT msg, LPARAM lParam)

{

static int lastid = -1;

POINT pt;

pt.x = GET_X_LPARAM (lParam);

pt.y = GET_Y_LPARAM (lParam);

if (msg == WM_LBUTTONDOWN)

{

lastid = -1;

for (WORD i = 0; i < WndMCC. count; i++)

if (PtInRect (&((WndMCC.ctr[i]).area), pt) && (WndMCC.ctr[i]. enabled))

{

lastid = i;

//break;

}

}

else

if (msg == WM_LBUTTONUP)

{

for (WORD i = 0; i < WndMCC. count; i++)

if (PtInRect (&(WndMCC.ctr[i]).area, pt) && (lastid == i))

{

lastid = -1;

if (i == CloseBt. id)

{

CloseMyWindow ();

}

if (i == MinimizeBt. id)

{

ERRORMSG («dfgdfgdfgdfg»);

MinimizeWnd (); // минимизация ΠΎΠΊΠ½Π°

}

if (i == File. id)

{

//ERRORMSG («dfgdfgdfgdfg»);

SendMessage (myhwnd, MY_OPEN, NULL, NULL);

//MinimizeWnd (); // минимизация ΠΎΠΊΠ½Π°

}

if (WndMCC.ctr[i]. type==7) // Если это check Box

{int t=4;

for (int k=0; k<=7; k++)

{

}

if (WndMCC.ctr[i]. MARK==TRUE)

{WndMCC.ctr[i].MARK = FALSE;

inf [i-t]. MARK=FALSE;

information [i-t]=FALSE;

}

else

{WndMCC.ctr[i]. MARK = TRUE;

inf [i-t]. MARK=TRUE;

information [i-t]=TRUE;

};

RECT r;

r.bottom=330;

r.left=29;

r.right=4600;

r.top=310;

InvalidateRect (myhwnd,&r, FALSE);

SendMessage (myhwnd, WM_PAINT, NULL, NULL);

}

/*

if (id == MinimizeBt. id)

{

ERRORMSG («dfgdfgdfgdfg»); // минимизация ΠΎΠΊΠ½Π°

}*/

}

}

}

void MyMainWindow: MinimizeWnd ()

{

WndMCC. ResetMyctr (myhwnd);

ShowWindow (myhwnd, SW_MINIMIZE);

/*

SendMessage (

myhwnd, // handle to destination window

WM_SETICON, // message to send

ICON_SMALL, // icon type

NULL // handle to icon (HICON)

);

*/

}

void MyMainWindow: CloseMyWindow ()

{

ShowWindow (

myhwnd, // handle to window

SW_MINIMIZE // show state

);

SendMessage (myhwnd, WM_CLOSE, 0, 0);

DestroyWindow (myhwnd);

PostQuitMessage (0);

}

void MyMainWindow: OnBottonPress (int id)

{

if (id == CloseBt. id)

{

CloseMyWindow ();

}

if (id == MinimizeBt. id)

{

//ERRORMSG («dfgdfgdfgdfg»); // минимизация ΠΎΠΊΠ½Π°

}

}

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ