Видео: Разлика между асемблер и компилатор
2024 Автор: Mildred Bawerman | [email protected]. Последно модифициран: 2023-12-16 08:37
Асемблер срещу Компилатор
По принцип компилаторът е компютърна програма, която чете програма, написана на един език, който се нарича изходен език, и го превежда на друг език, който се нарича целевият език. Традиционно изходният език е език на високо ниво като C ++, а целевият език е език на ниско ниво като език на асамблеята. Съществуват обаче компилатори, които могат да конвертират изходна програма, написана на асемблерен език, и да я преобразуват в машинен код или обектен код. Асемблерите са такива инструменти. И така, асемблерите и компилаторите в крайна сметка произвеждат код, който може да бъде директно изпълнен на машина.
Какво е компилатор?
Компилаторът е компютърна програма, която чете програма, написана на един език, който се нарича изходен език, и го превежда на друг език, който се нарича целевият език. Най-често изходният език е език на високо ниво, а целевият език е език на ниско ниво. Така че като цяло компилаторите могат да се разглеждат като преводачи, които превеждат от един език на друг. Освен това компилаторите извършват някои оптимизации на кода. Типичният компилатор се състои от няколко основни компонента. Първият компонент е скенерът (известен също като лексикален анализатор). Scanner чете програмата и я преобразува в низ от символи. Вторият компонент е парсерът. Той преобразува низа от символи в дърво за синтактичен анализ (или абстрактно синтаксисно дърво), което улавя синтактичната структура на програмата. Следващият компонент са семантичните подпрограми, които интерпретират семантиката на синтактичната структура. Оптимизацията на кода и окончателното генериране на код следват това.
Какво е Асемблер?
Assembler е софтуер или инструмент, който превежда асемблерния език в машинен код. И така, асемблерът е вид компилатор и изходният код е написан на асемблерен език. Сглобяването е разбираем за човека език, но обикновено има връзка едно към едно със съответния машинен код. Следователно се казва, че асемблерът извършва изоморфен (едно към едно картографиране) превод. Разширените асемблери предоставят допълнителни функции, които поддържат процесите на разработване на програми и отстраняване на грешки. Например видът на асемблерите, наречени макро асемблери, осигурява макросъоръжение.
Каква е разликата между Асемблер и Компилатор?
Компилаторът е компютърна програма, която чете програма, написана на един език, и я превежда на друг език, докато асемблерът може да се счита за специален тип компилатор, който превежда само езика на събранието в машинен код. Компилаторите обикновено произвеждат машинния изпълним код директно от език на високо ниво, но асемблерите създават обектен код, който може да се наложи да бъде свързан с помощта на програми за свързване, за да се изпълнява на машина. Тъй като асемблерният език има съпоставяне едно към едно с машинен код, асемблер може да се използва за създаване на код, който работи много ефективно за случаи, в които производителността е много важна (например за графични машини, вградени системи с ограничени хардуерни ресурси в сравнение с персонален компютър като микровълни, перални машини и др.).
Препоръчано:
Разлика между ЕМП и потенциална разлика
EMF срещу потенциална разлика (електромоторна сила) се използват за описване на два различни параметъра между две точки. Терминът „потенциална разлика“е ге
Разлика между фазовата разлика и разликата в пътя
Фазова разлика спрямо разликата в пътя Разликата във фазата и разликата в пътя са две много важни концепции в оптиката. Тези явления се наблюдават по проблемите на
Разлика между асемблер и преводач
Assembler срещу Interpreter Като цяло компилаторът е компютърна програма, която чете програма, написана на един език, който се нарича изходен език, и
Разлика между дебъгер и компилатор
Debugger vs Compiler Като цяло компилаторът е компютърна програма, която чете програма, написана на един език, който се нарича изходен език, и tran
Разлика между ключовата разлика между металните и неметалните минерали
Ключова разлика - метални срещу неметални минерали Минералът е естествено срещаща се твърда и неорганична съставка с определена химическа формула и