Diferența cheie – Limbajul mașinii vs limbajul de asamblare
Limbajele de programare permit oamenilor să creeze instrucțiuni pentru ca un computer să efectueze sarcini. Există trei categorii de limbaje de programare, cum ar fi limbaje de programare de nivel în alt, limbaj de asamblare și limbaj de mașină. Limbajele de programare de nivel în alt sunt mai ușor de înțeles de către oameni. Limbajul recunoscut de un computer este cunoscut ca limbaj mașină. Limbajul de asamblare este limbajul dintre limbajele de nivel în alt și limbajul mașină. Diferența esențială dintre limbajul mașină și limbajul de asamblare este că, limbajul de mașină se execută direct de către un computer, iar limbajul de asamblare necesită ca un asamblator să fie convertit în cod mașină sau cod obiect pentru a fi executat de CPU.
Ce este limbajul mașinii?
Oamenii pot înțelege limbaje de programare de nivel în alt. Nu este necesar să aveți o înțelegere profundă a procesorului intern, să programați folosind limbaje de nivel în alt. Ele urmează o sintaxă similară cu limba engleză. Java, C, C++, Python sunt câteva limbaje de programare de nivel în alt. Un computer recunoaște limbajul mașinii, dar nu înțelege limbajele de nivel în alt. Prin urmare, aceste programe ar trebui convertite într-un limbaj de calculator ușor de înțeles. Această traducere se face folosind un compilator sau un interpret.
Figura 01: Limbajul mașinii de zerouri și unități.
Un limbaj de mașină este format din cifre binare care sunt zerouri și o singură dată. Un computer este un dispozitiv electronic digital, deci folosește binar pentru operații. Unul indică starea adevărată / starea pornit, în timp ce zero indică starea falsă / starea oprită. Modul de conversie a unui program din limbajul de nivel în alt în limbajul mașinii depinde de procesor.
Ce este limbajul de asamblare?
Limbajul de asamblare este limbajul intermediar între limbajele de programare de nivel în alt și limbajul mașină. Este cu un nivel peste limbajul mașinii. Limbajul de asamblare este mai ușor de înțeles decât limbajul mașină, dar mai greu decât limbajele de programare de nivel în alt. Acest limbaj este cunoscut și ca limbaj de nivel scăzut deoarece este aproape de nivelul hardware. Pentru a scrie programe eficiente folosind Assembly, programatorul ar trebui să aibă o bună înțelegere a arhitecturii computerului și a structurii registrului. Un compilator special cunoscut sub numele de asamblator este folosit pentru a converti instrucțiunile limbajului de asamblare în cod mașină sau cod obiect.
Instrucțiunile în limbajul de asamblare au patru secțiuni. Sunt o etichetă, mnemonic, operand, comentariu. Eticheta și comentariile sunt opționale. Mnemonicul este instrucțiunea de executat, iar operanzii sunt parametrii pentru comandă. Limbajul de asamblare acceptă și macrocomenzi. O macrocomandă poate fi definită ca un set de instrucțiuni cu un nume. Poate fi folosit în altă parte a programului.
Unele exemple de declarații în limbajul asamblare sunt următoarele.
MOV SUM, 50 – Această instrucțiune copiază valoarea 50 în variabila SUM.
ADĂUGAȚI VALOARE1, 20 – Acesta este pentru a adăuga 20 la variabila VALUE1
ADD AH, BH – Această instrucțiune este de a copia conținutul din registrul AH în registrul BH.
INC COUNT – Aceasta este pentru a incrementa variabila COUNT cu unu.
ȘI VALOARE1, 100 – Aceasta este pentru a efectua operația ȘI pe variabilele VALOARE1 și 100.
MOV AL, 20 – Aceasta este pentru a copia valoarea 20 în registrul AL
Figura 02: Un program scris folosind limbajul de asamblare
Setul de declarații de asamblare este un program de asamblare. Se poate observa că limbajul de asamblare este mai ușor decât limbajul mașină. Are o sintaxă similară cu limba engleză. Limbajul de asamblare are aproximativ treizeci de instrucțiuni. Memoria necesară și timpul de execuție este minim în comparație cu limbajele de nivel în alt.
În sistemele în timp real, pot exista evenimente care necesită acțiune imediată a CPU. Aceste evenimente sunt subrutine speciale numite Rutina serviciului de întrerupere (ISR). Limbajul de asamblare este util pentru programarea ISR.
Care este asemănarea dintre limbajul mașină și limbajul de asamblare?
Atât limbajul mașinii, cât și limbajul de asamblare sunt legate de nivelul hardware
Care este diferența dintre limbajul mașină și limbajul de asamblare?
Limbaj mașină vs limbaj de asamblare |
|
Limbajul mașinii este limbajul de programare de cel mai jos nivel în care instrucțiunile sunt executate direct de CPU. | Limbajul de asamblare este un limbaj de programare de nivel scăzut care necesită un asamblator pentru a se converti în codul mașinii/codul obiect. |
Comprehensibilitate | |
Limbajul mașinii este ușor de înțeles numai pentru computere. | Limbajul de asamblare este ușor de înțeles pentru oameni. |
Sintaxă | |
Un limbaj de mașină este format din cifre binare. | Limbajul de asamblare urmează o sintaxă similară cu limba engleză. |
Dependență | |
Limbajul mașinii variază în funcție de platformă. | Limbajul de asamblare constă dintr-un set standard de instrucțiuni. |
Aplicații | |
Limbajul mașinii este codul mașinii. | Se folosește limbajul de asamblare pentru sistemele în timp real bazate pe microprocesoare. |
Rezumat – Limbajul mașinii vs limbajul de asamblare
Diferența dintre limbajul mașină și limbajul de asamblare este că limbajul de mașină este executat direct de un computer, iar limbajul de asamblare este un limbaj de programare de nivel scăzut, care necesită ca un asamblator să se transforme în cod obiect sau cod mașină. Limbajul de asamblare este cu un pas înaintea limbajului mașinii. Limbajul de asamblare este un limbaj ideal pentru programarea sistemelor bazate pe microcontrolere. Acest limbaj oferă, de asemenea, o bună înțelegere a modului în care funcționează procesorul și a componentelor interne ale computerului.
Descărcați versiunea PDF a limbajului mașină vs limbajul de asamblare
Puteți descărca versiunea PDF a acestui articol și o puteți utiliza în scopuri offline, conform nota de citare. Vă rugăm să descărcați versiunea PDF aici Diferența dintre limbajul mașinii și limbajul de asamblare
Cu amabilitatea imaginii:
1. „Limbajul mașinii” de Turkei89 – Operă proprie, (CC BY-SA 3.0) prin Commons Wikimedia
2.’Zstr count x86 assembly’ De OldCodger2, (domeniu public) prin Commons Wikimedia