Разликата между времето за изпълнение и времето за компилация

Автор: Annie Hansen
Дата На Създаване: 3 Април 2021
Дата На Актуализиране: 17 Ноември 2024
Anonim
Моя работа наблюдать за лесом и здесь происходит что-то странное
Видео: Моя работа наблюдать за лесом и здесь происходит что-то странное

Съдържание

Как работи компютърната програма е загадка за типичния потребител, който се доверява на работата на програмистите. Програмистът трябва да разбере как компютърът очаква да получава команди в двете стъпки за изпълнение (време за компилация и време за изпълнение), в допълнение към други концепции.

Време за изграждане

Първият етап от стартирането на програма, времето за компилиране, включва превод на разбираем за хората език или „изходен код“ на език, който компютърът разбира, или „машинен код“. Изходният код съдържа думи, които разпознавате, числа в десетичен формат и организирани структури, които улесняват разбирането на потока от инструкции. Стъпката на времето за компилация е завършена, когато новата програма е изпълним файл.


Времетраене

Компютърът използва инструкциите, изготвени по време на компилиране, за да стартира програмата. По време на изпълнение компютърът чете превода на изходния код, за да изпълнява задачите, включени от програмиста. Всеки път, когато някой стартира програмата, той го прави по време на изпълнение.

Разлика

Времето за компилация се пресича само веднъж, за да се преведе изходният код в изпълним файл, който може да бъде извикан толкова пъти, колкото е необходимо, без да се компилира отново, освен ако програмата се нуждае от промени. Повечето потребители използват само времето за изпълнение.


Грешки при компилация

По време на двата етапа на изпълнение на програмата могат да възникнат грешки. В изходния код съществуват грешки при компилация или синтаксисни грешки. Примери за това са грешно написани команди, проблеми в реда на операциите, несъвместими комбинации от типове променливи и пропуски на необходимите елементи. Програмист може лесно да открие грешки по време на компилация, защото те са по-скоро синтактични, отколкото логически. Компилаторът обикновено намира грешка по време на компилация и обяснява или дава съвети за разрешаването й. Ако компилаторът създаде изпълним файл от код, програмата няма грешки по време на компилация.

Катастрофални грешки при изпълнение

Грешките по време на изпълнение могат да доведат до срив и прекратяване на програмата по-рано. Примери за такива грешки са достъпът до ограничена памет и разделяне на нула. Операторът "x / y" е синтактично правилен, но ако "y" съдържа стойност 0 по време на изпълнение, програмата ще се провали. Програмистът може да се затрудни при намирането на грешки при изпълнение, поради факта, че те обикновено се случват при определени условия.


Логически грешки по време на изпълнение

Логическата грешка не води до неуспех на програмата, но я кара да работи по начин, който програмистът не иска. Помислете за програма с меню с опции, която очаква потребителят да въведе желания номер на опцията. Ако потребителят напише писмо, програмата в очакване на число може да го преобразува в числова стойност и да изпрати потребителя към една от опциите, като изглежда, че нищо не е наред, вместо да информира, че потребителят е въвел невалидна опция.