Różnica między językiem maszynowym a językiem asemblera

Spisu treści:

Różnica między językiem maszynowym a językiem asemblera
Różnica między językiem maszynowym a językiem asemblera

Wideo: Różnica między językiem maszynowym a językiem asemblera

Wideo: Różnica między językiem maszynowym a językiem asemblera
Wideo: Comparing C to machine language 2024, Grudzień
Anonim

Kluczowa różnica – język maszynowy a język asemblera

Języki programowania pozwalają ludziom tworzyć instrukcje dla komputera do wykonywania zadań. Istnieją trzy kategorie języków programowania, takie jak języki programowania wysokiego poziomu, język asemblera i język maszynowy. Języki programowania wysokiego poziomu są łatwiejsze do zrozumienia dla ludzi. Język rozpoznawany przez komputer to język maszynowy. Język asemblera to język pomiędzy językami wysokiego poziomu a językiem maszynowym. Kluczową różnicą między językiem maszynowym a językiem asemblerowym jest to, że język maszynowy jest wykonywany bezpośrednio przez komputer, a język asembler wymaga konwersji asemblera na kod maszynowy lub kod obiektowy do wykonania przez procesor.

Co to jest język maszynowy?

Ludzie rozumieją języki programowania wysokiego poziomu. Nie jest konieczne głębokie zrozumienie wewnętrznego procesora, aby programować przy użyciu języków wysokiego poziomu. Posługują się składnią podobną do języka angielskiego. Java, C, C++, Python to niektóre języki programowania wysokiego poziomu. Komputer rozpoznaje język maszynowy, ale nie rozumie języków wysokiego poziomu. Dlatego programy te powinny być przekonwertowane na język maszynowy zrozumiały dla komputera. To tłumaczenie jest wykonywane za pomocą kompilatora lub interpretera.

Różnica między językiem maszynowym a językiem asemblera
Różnica między językiem maszynowym a językiem asemblera
Różnica między językiem maszynowym a językiem asemblera
Różnica między językiem maszynowym a językiem asemblera

Rysunek 01: Język maszynowy zer i jedynek.

Język maszynowy składa się z cyfr binarnych, które są zerami i raz. Komputer jest cyfrowym urządzeniem elektronicznym, więc używa binarnego do operacji. Jeden wskazuje stan prawdziwy/włączony, a zero wskazuje stan fałszywy/wyłączony. Sposób konwersji programu z języka wysokiego poziomu na język maszynowy zależy od procesora.

Co to jest język asemblera?

Język asemblera to język pośredni między językami programowania wysokiego poziomu a językiem maszynowym. Jest o jeden poziom powyżej języka maszynowego. Język asemblera jest łatwiejszy do zrozumienia niż język maszynowy, ale trudniejszy niż języki programowania wysokiego poziomu. Ten język jest również znany jako język niskiego poziomu, ponieważ jest zbliżony do poziomu sprzętowego. W celu pisania efektywnych programów przy użyciu asemblera, programista powinien dobrze rozumieć architekturę komputera i strukturę rejestrów. Specjalny kompilator znany jako asembler jest używany do konwersji instrukcji języka asemblera na kod maszynowy lub kod obiektowy.

Wyrażenia języka asemblera mają cztery sekcje. Są etykietą, mnemonikiem, operandem, komentarzem. Etykieta i komentarze są opcjonalne. Mnemonik to instrukcja do wykonania, a operandy to parametry polecenia. Język asemblera obsługuje również makra. Makro można zdefiniować jako zestaw instrukcji o nazwie. Może być używany w innym miejscu programu.

Kilka przykładów instrukcji asemblerowych jest jak następuje.

MOV SUM, 50 – Ta instrukcja kopiuje wartość 50 do zmiennej SUM.

DODAJ WARTOŚĆ1, 20 – Dodaje 20 do zmiennej WARTOŚĆ1

ADD AH, BH – Ta instrukcja ma na celu skopiowanie zawartości rejestru AH do rejestru BH.

INC COUNT – Zwiększa zmienną COUNT o jeden.

AND WARTOŚĆ1, 100 – Wykonuje operację AND na zmiennych WARTOŚĆ1 i 100.

MOV AL, 20 – Kopiuje wartość 20 do rejestru AL

Kluczowa różnica między językiem maszynowym a językiem asemblera
Kluczowa różnica między językiem maszynowym a językiem asemblera
Kluczowa różnica między językiem maszynowym a językiem asemblera
Kluczowa różnica między językiem maszynowym a językiem asemblera

Rysunek 02: Program napisany przy użyciu języka asemblera

Zestaw instrukcji Assembly to program do montażu. Widać, że asembler jest łatwiejszy niż język maszynowy. Ma składnię podobną do języka angielskiego. Język asemblera ma około trzydziestu instrukcji. Wymagana pamięć i czas wykonania to minimum w porównaniu z językami wysokiego poziomu.

W systemach czasu rzeczywistego mogą wystąpić zdarzenia, które wymagają natychmiastowego działania procesora. Zdarzenia te są specjalnymi podprogramami zwanymi przerwaniem (ISR). Język asemblera jest przydatny do programowania ISR.

Jakie jest podobieństwo między językiem maszynowym a językiem asemblera?

Zarówno język maszynowy, jak i język asemblera są powiązane z poziomem sprzętu

Jaka jest różnica między językiem maszynowym a językiem asemblera?

Język maszynowy a język asemblera

Język maszynowy to język programowania najniższego poziomu, w którym instrukcje są wykonywane bezpośrednio przez procesor. Język asemblera to język programowania niskiego poziomu, który wymaga asemblera do konwersji na kod maszynowy/kod obiektowy.
Zrozumiałość
Język maszynowy jest zrozumiały tylko dla komputerów. Język asemblera jest zrozumiały dla ludzi.
Składnia
Język maszynowy składa się z cyfr binarnych. Język asemblera ma składnię podobną do języka angielskiego.
Zależność
Język maszyny różni się w zależności od platformy. Język asemblera składa się ze standardowego zestawu instrukcji.
Aplikacje
Język maszynowy to kod maszynowy. Język asemblera jest używany w systemach czasu rzeczywistego opartych na mikroprocesorach.

Podsumowanie – Język maszynowy a język asemblera

Różnica między językiem maszynowym a asemblerowym polega na tym, że język maszynowy jest bezpośrednio wykonywany przez komputer, a asembler jest językiem programowania niskiego poziomu, który wymaga asemblera do konwersji na kod obiektowy lub kod maszynowy. Język asemblera jest o krok przed językiem maszynowym. Język asemblera jest idealnym językiem do programowania systemów opartych na mikrokontrolerach. Ten język daje również dobre zrozumienie działania procesora i wewnętrznych komponentów komputera.

Pobierz wersję PDF języka maszynowego a język asemblera

Możesz pobrać wersję PDF tego artykułu i używać jej do celów offline zgodnie z notatką cytowania. Proszę pobrać wersję PDF tutaj Różnica między językiem maszynowym a językiem asemblera

Zdjęcie dzięki uprzejmości:

1.’Język maszynowy’Autor: Turkei89 – Praca własna, (CC BY-SA 3.0) przez Commons Wikimedia

2.'Zstr count x86 Assembly' Autor: OldCodger2, (domena publiczna) przez Commons Wikimedia

Zalecana: