Зациклення - програма - велика енциклопедія нафти і газу, стаття, сторінка 1

Зациклення - програма

Зациклення програми відбувається в разі, коли машина робить обчислення за деякою замкнутому циклу, не зупиняючись. [1]

Типова причина примусового завершення - зациклення програми. коли вичерпується замовлене час. Оскільки частина видачі може пропасти, лістинг програми іноді виявляється дезінформує. Наприклад, можлива ситуація, коли програма зациклюється при виконанні, а лістинг неповний, від чого виникає хибне враження, що програма була знята під час компіляції. [2]

Використання цього параметра дозволяє припинити завдання в разі зациклення програми. Якщо параметр опущений, то встановлюється стандартне значення, визначене в процедурі системного введення. [3]

Даний метод контролю вельми ефективний при виявленні грубих помилок, що приводяться до зациклення програм. Позитивною властивістю його є те, що лічильник часу працює паралельно з основною програмою і додаткового часу на контроль майже не потрібно. [4]

Параметр TIME-час-вказує гранично допустимий час виконання завдання центральним процесором і використовується для запобігання зациклення програми. [5]

Слід поганити, що для фіктивного АП не можна викликати переривання по сигналу увагу, тому при зациклення програм. виконуваних на фіктивному АП, необхідно закінчити виконання ДИСП. [6]

Найбільш частими ситуаціями, з якими стикається програміст при налагодженні програми, є аварійне завершення програми в результаті програмного переривання, зациклення програми і неправильні результати. [8]

Більшість сучасних ЕОМ включає до складу своєї апаратури різного роду таймери, що дозволяють програмувати події, пов'язані з часом. Контроль за часом є єдиним засобом, що дозволяє запобігти наслідкам від зациклення програм. Облік часу необхідний і при організації служб диспетчеризації завдань і оплати послуг за обчислювальні роботи. [9]

Затвердження RETRY використовується тільки всередині умови ON ERROR. При цьому програміст повинен подбати про те, щоб не сталося зациклення програми. [10]

Ключовий параметр TIME (час) встановлює граничне значення інтервалу часу, на якому завдання може використовувати центральний процесор системи. Після закінчення цього часу завдання знімається. Це необхідно на випадок зациклення програми. [12]

Типи циклів доцільно застосовувати тільки арифметичні. Ітераційні цикли Алголь з умовою в заголовку циклу замінюються арифметичними з умовами, перенесеними в тіло циклу. Цим досягається стійкість циклу і виключення зациклення програми при поганій збіжності. Для широкого діапазону умов збіжності завжди доцільно вказати граничне число ітераційних циклів, що забезпечить вихід з циклу, навіть якщо умова закінчення ітерацій не виконано. Цикли з перерахуванням також можуть бути замінені арифметичними, оскільки і в тому і в іншому випадку в пам'яті організовується масив, в якому зберігаються значення параметрів. Для ЦВМ, що мають циклові команди, допускається розширення типів циклів, щоб мати можливість, застосовуючи ці команди, отримувати більш економну програму. [13]

Розглянемо програму 6.4 реєстрації оцифрованого напруги з датчика, що друкує його значення для контролю на екрані дисплея. У цьому прикладі за допомогою інструкції безумовного переходу GOTO 1 ми змінили нормальне послідовне виконання програми, змушуючи її передати управління назад. При цьому виникла ситуація, звана зацикленням програми. коли фрагмент з чотирьох інструкцій буде виконуватися нескінченну кількість разів. [14]

Всі параметри заголовка циклу є змінними цілого типу, і будь-яка з них, якщо тільки вона не задана буквальною константою, доступна як всередині конструкції DO, так і поза нею. Якщо під час роботи програми ко-кінцевого значення стає негативним або нульовим, змінна циклу приймає значення 1, а виконання циклу припиняється. Ненавмисна заміна значення кроку збільшення змінної циклу нулем призведе до зациклення програми. цикл буде виконуватися вічно В цьому сенсі робота з конструкцією DO вимагає від програміста уваги і акуратності. Найпростіші прийоми, що гарантують передбачуване виконання циклу, - ніколи не використовувати змінні-параметри циклу поза циклом, задавати кордону зміни і крок змінної циклу буквальними або іменованими константами, не завжди застосовні. [15]

Сторінки: 1 2

Поділитися посиланням:

Схожі статті