Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«Π—Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ Ρ…Π°ΠΊΠ΅Ρ€ΠΎΠ² ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… сСтСй». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 35

Автор ΠšΠΎΠ»Π»Π΅ΠΊΡ‚ΠΈΠ² Π°Π²Ρ‚ΠΎΡ€ΠΎΠ²

Рис. 5.6. Начало ΠΈΠ³Ρ€Ρ‹ Heroes of Might and Magic II

Π’ частности, ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Π·ΠΎΠ»ΠΎΡ‚ΠΎΠΉ запас гСроя: 7500 ΠΏΠΎΡ€Ρ†ΠΈΠΉ. ΠŸΠ΅Ρ€Π²ΠΎΠ΅, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ Π°Π²Ρ‚ΠΎΡ€, β€“ ΠΎΠ½ сохраняСт ΠΈΠ³Ρ€Ρƒ ΠΏΠΎΠ΄ ΠΈΠΌΠ΅Π½Π΅ΠΌ hackl. Π—Π°Ρ‚Π΅ΠΌ ΠΎΠ½ измСняСт Π·ΠΎΠ»ΠΎΡ‚ΠΎΠΉ запас Π½Π° минимально Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡƒΡŽ сумму. ВскорС Π°Π²Ρ‚ΠΎΡ€ ΠΎΠ±ΡŠΡΡΠ½ΠΈΡ‚ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρƒ своих поступков. Π‘Π°ΠΌΠΎΠ΅ простоС – это ΠΊΡƒΠΏΠΈΡ‚ΡŒ Ρ‡Ρ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Π½Π΅Π΄ΠΎΡ€ΠΎΠ³ΠΎΠ΅. Автор ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ отправляСтся Π² Π·Π°ΠΌΠΎΠΊ ΠΈ ΠΏΠΎΠΊΡƒΠΏΠ°Π΅Ρ‚ скСлСт – ΠΎΠ΄Π½Ρƒ ΠΈΠ· самых Π΄Π΅ΡˆΠ΅Π²Ρ‹Ρ… Π²Π΅Ρ‰Π΅ΠΉ. ПослС ΠΏΠΎΠΊΡƒΠΏΠΊΠΈ скСлСта Ρƒ Π°Π²Ρ‚ΠΎΡ€Π° становится 7425 ΠΏΠΎΡ€Ρ†ΠΈΠΉ Π·ΠΎΠ»ΠΎΡ‚Π°. Автор сохраняСт ΠΈΠ³Ρ€Ρƒ ΠΏΠΎΠ΄ ΠΈΠΌΠ΅Π½Π΅ΠΌ hack2 ΠΈ Π·Π°Ρ‚Π΅ΠΌ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки запускаСт ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ сравнСния Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° рис. 5.7.

Рис. 5.7. ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» сравнСний Π΄Π²ΡƒΡ… Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ DOS fc

Команда fc сравниваСт Π΄Π²Π° Ρ„Π°ΠΉΠ»Π°. Если Π·Π°Π΄Π°Ρ‚ΡŒ ΠΎΠΏΡ†ΠΈΡŽ /b, Ρ‚ΠΎ выполняСтся ΠΏΠΎΠ±Π°ΠΉΡ‚Π½ΠΎΠ΅ сравнСниС. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ пСчатаСтся ΠΎΡ‚Ρ‡Π΅Ρ‚ Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹Ρ… Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠΉ Π² ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅, Π½Π° Ρ‡Π΅ΠΌ слСдуСт ΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΡΡ, β€“ это ΠΊΠ°Π»ΡŒΠΊΡƒΠ»ΡΡ‚ΠΎΡ€ Windows (ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° calc.exe), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт пСрСвСсти числа 7500 ΠΈ 7425 ΠΈΠ· дСсятичной систСмы счислСния Π² ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½ΡƒΡŽ. Если Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ подмСню Scientific мСню View ΠΊΠ°Π»ΡŒΠΊΡƒΠ»ΡΡ‚ΠΎΡ€Π°, Ρ‚ΠΎ станут доступными Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ возмоТности прСобразования чисСл, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ· дСсятичного Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Π² ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½ΠΎΠ΅, Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ ΠΈ трСбуСтся. ΠŸΡ€ΠΈ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ Dec слСдуСт Π½Π°Π±Ρ€Π°Ρ‚ΡŒ 7500 ΠΈ Π·Π°Ρ‚Π΅ΠΌ Ρ‰Π΅Π»ΠΊΠ½ΡƒΡ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ΅ Hex. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ прСдставлСниС числа 7500 Π² ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½ΠΎΠΉ систСмС счислСния 1D4C. ΠŸΠΎΠ²Ρ‚ΠΎΡ€ΠΈΠ² Ρ‚ΠΎ ΠΆΠ΅ самоС для числа 7425, ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ 1D01.

ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ выполнСния ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ fc, ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ²Π°Π΅ΠΌ ΠΌΠ½ΠΎΠ³ΠΎΠΎΠ±Π΅Ρ‰Π°ΡŽΡ‰Π΅Π΅ Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠ΅ ΠΏΠΎ адрСсу 368 (Π² ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½ΠΎΠΌ прСдставлСнии). Π Π°Π½Π΅Π΅ Ρ‚Π°ΠΌ Π±Ρ‹Π»ΠΎ 4C, Π° стало 01, Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΡ‡Π½ΠΎ совпадаСт с ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΌΠΈ вычислСниями. Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚ΡŒ значСния Π΄Ρ€ΡƒΠ³ΠΈΡ… чисСл. Π Π°Π½Π΅Π΅ Π² Π·Π°ΠΌΠΊΠ΅ Π±Ρ‹Π»ΠΎ восСмь скСлСтов. ПослС ΠΏΠΎΠΊΡƒΠΏΠΊΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΎΡΡ‚Π°Π»ΠΎΡΡŒ сСмь. На это, каТСтся, ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π±Π°ΠΉΡ‚ ΠΏΠΎ адрСсу 3AE4. Π‘Π°ΠΉΡ‚ ΠΏΠΎ адрСсу 3AD3 ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ·Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ скСлСт Π² Π³Π°Ρ€Π½ΠΈΠ·ΠΎΠ½Π΅ Π·Π°ΠΌΠΊΠ°, Π³Π΄Π΅ ΠΏΡ€Π΅ΠΆΠ΄Π΅ Π½Π΅ Π±Ρ‹Π»ΠΎ Π½ΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ.

Но ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π°Π²Ρ‚ΠΎΡ€Π° интСрСсуСт Π·ΠΎΠ»ΠΎΡ‚ΠΎΠΉ запас, Ρ‚ΠΎ ΠΎΠ½ запускаСт ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½Ρ‹ΠΉ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ ΠΈ Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅Ρ‚ Ρ„Π°ΠΉΠ» hack2.gm1. ШСстнадцатСричный Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ схоТ с Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΠΎΠΌ сСкторов, Π½ΠΎ ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ Π½Π° Ρ€Π°Π±ΠΎΡ‚Ρƒ с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ, Π° Π½Π΅ с дисковой ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ. ΠŸΠ΅Ρ€Π΅ΠΉΠ΄Ρ ΠΏΠΎ ΡΠΌΠ΅Ρ‰Π΅Π½ΠΈΡŽ 368, Π²ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΌ находятся Π΄Π°Π½Π½Ρ‹Π΅ 1D 01. ΠžΡ‚ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Ρ†ΠΈΡ„Ρ€Ρ‹ Π² числС располоТСны Π² ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ порядкС, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½ΠΎ для людСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ язык, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΉ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Π΅ ΠΊΠΎΡ€Π½ΠΈ с латинским языком. ΠžΠ±ΡŠΡΡΠ½ΡΠ΅Ρ‚ΡΡ это порядком запоминания чисСл Π² процСссорах Intel: Π½Π°ΠΈΠΌΠ΅Π½Π΅Π΅ Π·Π½Π°Ρ‡Π°Ρ‰ΠΈΠΉ Π±Π°ΠΉΡ‚ числа запоминаСтся ΠΏΠΎ ΠΌΠ»Π°Π΄ΡˆΠ΅ΠΌΡƒ адрСсу. Π•ΡΡ‚ΡŒ СдинствСнный способ ΡƒΠ΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒΡΡ Π² ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ прСдполоТСния ΠΎ Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠΈ Π½Π°ΠΉΠ΄Π΅Π½Π½ΠΎΠΉ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρ‹ – ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹ΠΉ Π±Π°ΠΉΡ‚. Автор ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ» самый ΠΏΡ€Π°Π²Ρ‹ΠΉ Π±Π°ΠΉΡ‚ числа 1D (ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π² этом случаС Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ измСнСния проявятся сильнСС всСго) Π½Π° Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρƒ FF (максимальная Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Π° Π² ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½ΠΎΠΉ систСмС счислСния). На рисункС 5.8 ΠΏΠΎΠΊΠ°Π·Π°Π½ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ hack2.gm1 ΠΏΡ€ΠΈ стартС ΠΈΠ³Ρ€Ρ‹.

Рис. 5.8. Π’Π° ΠΆΠ΅ ΠΈΠ³Ρ€Π° послС рСдактирования Π΅Π΅ сохранСнных Π΄Π°Π½Π½Ρ‹Ρ…

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Π·ΠΎΠ»ΠΎΡ‚ΠΎΠΉ запас, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ составляСт 65 281 ΠΏΠΎΡ€Ρ†ΠΈΡŽ. Быстрая ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ это дСсятичноС прСдставлСниС ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½ΠΎΠ³ΠΎ числа FF01. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Ρƒ ΠΈΠ³Ρ€ΠΎΠΊΠ° появилось ΡΠ΅Ρ€ΡŒΠ΅Π·Π½ΠΎΠ΅ прСимущСство: ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ с Π»Π΅Π³ΠΊΠΎΡΡ‚ΡŒΡŽ ΠΊΡ€ΡƒΡˆΠΈΡ‚ΡŒ своих Π²ΠΎΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΡ‹Ρ… Π²Ρ€Π°Π³ΠΎΠ². Если Π±Ρ‹ ΠΈΠ³Ρ€ΠΎΠΊ Π·Π°Ρ…ΠΎΡ‚Π΅Π» ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ свой Π·ΠΎΠ»ΠΎΡ‚ΠΎΠΉ запас Π΄ΠΎ максимально Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠΉ Π² ΠΈΠ³Ρ€Π΅ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρ‹, Ρ‚ΠΎ Π΅ΠΌΡƒ слСдовало Π±Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π±Π°ΠΉΡ‚ справа ΠΎΡ‚ 1D, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ исслСдования Π±Ρ‹Π» Ρ€Π°Π²Π΅Π½ 0. Π’ Ρ…ΡƒΠ΄ΡˆΠ΅ΠΌ случаС нСсколько ΠΏΠΎΠΏΡ‹Ρ‚ΠΎΠΊ измСнСния смСТных Π±Π°ΠΉΡ‚ Π² Ρ„Π°ΠΉΠ»Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½ΠΎΠ³ΠΎ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° подскаТут, ΠΊΠ°ΠΊΠΎΠΉ Π±Π°ΠΉΡ‚ слСдуСт ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ для увСличСния Π·ΠΎΠ»ΠΎΡ‚ΠΎΠ³ΠΎ запаса ΠΈΠ³Ρ€ΠΎΠΊΠ°.

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

Если Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»ΡŒ Π·Π½Π°ΠΊΠΎΠΌ с ΠΈΠ³Ρ€ΠΎΠΉ, Ρ‚ΠΎ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΡƒΠ΄ΠΈΠ²Π»Π΅Π½, ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΈΠ·Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ΅ Π½Π΅ ΠΏΡ€ΠΎΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΎ Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ соврСмСнной вСрсий ΠΈΠ³Ρ€Ρ‹ Heroes of Might ΠΈ Magic III. ΠŸΡ€ΠΈΡ‡ΠΈΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ раскрыта Π΄Π°Π»Π΅Π΅.

ИсслСдованиС инструмСнтария поиска Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠΉ

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

ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ инструмСнтария сравнСния Ρ„Π°ΠΉΠ»ΠΎΠ²

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

ИспользованиС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

fc

Команда fc, Π²ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌΠ°Ρ Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ ΠΌΠ½ΠΎΠ³ΠΈΡ… Π»Π΅Ρ‚ Π² DOS, Π° ΠΏΠΎΠ·Π΄Π½Π΅Π΅ ΠΈ Π² Windows – ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ инструмСнтарий, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ рассмотрСн. На ΠΌΠ°ΡˆΠΈΠ½Π°Ρ… с ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмой Windows 9x ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ fc ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π² Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ c: \windows\command, c: \windows ΠΈΠ»ΠΈ, Π² ΠΊΡ€Π°ΠΉΠ½Π΅ΠΌ случаС, Π² ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ Windows. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ дирСктория c: \windows\command пСрСчислСна Π² спискС ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… для задания порядка поиска Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠΌΡ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ. Бписок задаСтся ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ path. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΏΡ€ΠΈ нСобходимости ΠΌΠΎΠΆΠ½ΠΎ просто Π½Π°Π±Ρ€Π°Ρ‚ΡŒ fc ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ. ΠžΠΏΡ†ΠΈΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ fc пСрСчислСны Π½ΠΈΠΆΠ΅:

C:\windows\COMMAND>fc /?

Compares two files or sets of files and displays the

differences between

them.

FC [/A] [/C] [/L] [/LBn] [/N] [/T] [/W] [/nnnn]

[drive1:][path1]filename1

[drive2:][path2]filename2

FC /B [drive1:][path1]filename1 [drive2:][path2]filename2

/A Displays only first and last lines for each set of

differences.

/B Performs a binary comparison.

/C Disregards the case of letters.

/L Compares files as ASCII text.

/LBn Sets the maximum consecutive mismatches to the

specified number of lines.

/N Displays the line numbers on an ASCII comparison.

/T Does not expand tabs to spaces.

/W Compresses white space (tabs and spaces) for

comparison.

/nnnn Specifies the number of consecutive lines that must

match after a mismatch.

О ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Π΅ /b ΡƒΠΆΠ΅ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ»ΠΎΡΡŒ. ΠŸΡ€ΠΈ сравнСнии Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² Π±Π΅Π· указания ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Ρ /Π¬ процСсс сравнСния Ρ„Π°ΠΉΠ»ΠΎΠ² Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ΡΡ ΠΏΡ€ΠΈ достиТСнии символа ΠΊΠΎΠ½Ρ†Π° Ρ„Π°ΠΉΠ»Π° ΠΈΠ»ΠΈ Π½ΡƒΠ»Π΅Π²ΠΎΠ³ΠΎ Π±Π°ΠΉΡ‚Π°. Π£ этой ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΠΈ Ρ€Π΅ΠΆΠΈΠΌΠΎΠ² Π½Π΅ Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ ΠΊ рСгистру. Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, Ρ€Π°Π±ΠΎΡ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π½Π΅ зависит ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, Π½Π°Π±Ρ€Π°Π½Ρ‹ Π»ΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΠΈ строчными ΠΈΠ»ΠΈ Π·Π°Π³Π»Π°Π²Π½Ρ‹ΠΌΠΈ Π±ΡƒΠΊΠ²Π°ΠΌΠΈ. НапримСр, Π² Ρ„Π°ΠΉΠ»Π΅ подсказки описан ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΡŒ /Π’, Π½Π°Π±Ρ€Π°Π½Π½Ρ‹ΠΉ Π·Π°Π³Π»Π°Π²Π½Ρ‹ΠΌΠΈ Π±ΡƒΠΊΠ²Π°ΠΌΠΈ, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ Π² ΠΊΠ½ΠΈΠ³Π΅ продСмонстрирована прСкрасная Ρ€Π°Π±ΠΎΡ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ с ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Π΅ΠΌ /b. Π£ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π΅ΡΡ‚ΡŒ ряд Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Π΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»ΡŒ смоТСт ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ. Π’ дальнСйшСм Π±ΡƒΠ΄Π΅Ρ‚ сказано ΠΎ рядС ΡƒΡ‚ΠΈΠ»ΠΈΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΡ€Π°Π²Π½ΠΈΠ²Π°ΡŽΡ‚ тСкстовыС Ρ„Π°ΠΉΠ»Ρ‹ Π»ΡƒΡ‡ΡˆΠ΅, Ρ‡Π΅ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Π° fc. Но Ссли выбранная Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»Π΅ΠΌ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈ ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° Π΅Π³ΠΎ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅, Ρ‚ΠΎ, Π² ΠΊΡ€Π°ΠΉΠ½Π΅ΠΌ случаС, fc всСгда присутствуСт Π½Π° ΠΌΠ°ΡˆΠΈΠ½Π°Ρ… с ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмой Windows.

...

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅

Π’ ΠΏΠ΅Ρ€Π²ΠΎΠΌ ΠΏΡ€ΠΈΠ±Π»ΠΈΠΆΠ΅Π½ΠΈΠΈ эквивалСнтом ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ fc Π² систСмС UNIX являСтся ΠΊΠΎΠΌΠ°Π½Π΄Π° cmp -l (l β€” строчная Π±ΡƒΠΊΠ²Π°).

ИспользованиС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

diff

ΠŸΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π° diff появилась Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ UNIX. Она позволяСт ΡΡ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹, Π½ΠΎ особСнно ΠΏΠΎΠ»Π΅Π·Π½Π° для сравнСния тСкстов. ЀактичСски Π΅Π΅ возмоТностСй сравнСния тСкстовых Ρ„Π°ΠΉΠ»ΠΎΠ² Π±ΠΎΠ»Π΅Π΅ Ρ‡Π΅ΠΌ достаточно. ΠŸΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ всС возмоТности ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ diff Π½Π° страницах этой ΠΊΠ½ΠΈΠ³ΠΈ Π½Π΅ прСдставляСтся Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΌ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΈΡ… слишком ΠΌΠ½ΠΎΠ³ΠΎ. Но с Π½ΠΈΠΌΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… страницах руководств UNIX ΠΈΠ»ΠΈ ΠΏΠΎ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ (man page, сокр. manual page – опСративная страница руководства, β€“ гипСртСкстовая страница ΠΊΠΎΠ½ΡΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, ΠΏΠΎΡΡΠ½ΡΡŽΡ‰Π°Ρ дСйствиС ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹).

Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρƒ читатСля ΡΡ‚ΠΎΠΆΠΈΠ»ΠΎΡΡŒ прСдставлСниС ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ diff, Ссли ΠΎΠ½ Π½Π΅ ΡΠ»Ρ‹ΡˆΠ°Π» ΠΎ Π½Π΅ΠΉ Ρ€Π°Π½Π΅Π΅, Π² Π³Π»Π°Π²Π΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ список Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… возмоТностСй ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. Команда diff опрСдСляСт измСнСния Π² Π΄Π²ΡƒΡ… Ρ„Π°ΠΉΠ»Π°Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ для привСдСния ΠΈΡ… Π² соотвСтствиС Π΄Ρ€ΡƒΠ³ ΠΊ Π΄Ρ€ΡƒΠ³Ρƒ. Она позволяСт Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Ρ‚ΡŒ вСрсии Ρ„Π°ΠΉΠ»ΠΎΠ² Π±Π΅Π· нСобходимости хранСния ΠΏΠΎΠ»Π½Ρ‹Ρ… ΠΊΠΎΠΏΠΈΠΉ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ вСрсии Ρ„Π°ΠΉΠ»Π°. Команда diff Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ…ΠΎΡ€ΠΎΡˆΠ°, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ‚, Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π»ΠΈ строки ΡƒΠ΄Π°Π»ΡΡ‚ΡŒΡΡ ΠΈΠ»ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒΡΡ Π² Ρ„Π°ΠΉΠ» ΠΏΡ€ΠΈ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ² Π² соотвСтствиС Π΄Ρ€ΡƒΠ³ ΠΊ Π΄Ρ€ΡƒΠ³Ρƒ:

[ [email protected] /tmp]$ diff decode.c decode2.c

14a15

> #include <newinclude.h>