Was ist der Unterschied zwischen Makro und Prozedur?

Inhaltsverzeichnis:

Anonim

Die Hauptunterschied zwischen Makro und Prozedur ist, dass die Makro wird für eine kleine Anzahl von Anweisungen verwendet; weniger als zehn Anweisungen, aber Prozedur wird für eine große Anzahl von Anweisungen verwendet; mehr als zehn Anweisungen.

Ein Mikroprozessor ist ein Computerprozessor, der die Aufgaben einer Zentraleinheit (CPU) auf einer einzigen integrierten Schaltung (IC) ausführt. Es handhabt Ausgabegeräte und verarbeitet die in seinem Speicher abgelegten Anweisungen und stellt die Ausgabe bereit. Diese Prozessoren bestehen sowohl aus kombinatorischen als auch aus sequentiellen digitalen Schaltungen. Darüber hinaus ist die Assemblersprache eine Programmiersprache, die bei der Programmierung der Mikroprozessoren hilft. Insgesamt sind Makro und Prozedur zwei Konzepte in der Mikroprozessorprogrammierung.

Assemblersprache, Makro, Mikroprozessor, Prozedur, Programm

Was ist Makro

Ein Makro ist ein Satz von Anweisungen, der einen Namen hat, und der Programmierer kann ihn überall im Programm verwenden. Das Hauptziel von Makros ist die modulare Programmierung. Außerdem beginnt ein Makro mit der Direktive %macro und endet mit der Direktive %endmacro.

Die Syntax von Macro ist wie folgt.

%macro macro_name number_of_params

%endmakro

Der macro_name hilft bei der Identifizierung des Makros und der number_of_params bezieht sich auf die Zahlenparameter. Darüber hinaus ist es möglich, das Makro über den Makronamen mit den erforderlichen Parametern aufzurufen. Wenn es notwendig ist, denselben Befehlssatz mehrmals auszuführen, kann der Programmierer daher diese Befehle in ein Makro schreiben und dieses in seinem Programm verwenden.

Was ist Prozedur

Prozeduren sind nützlich, um ein umfangreiches Programm leichter zu lesen, zu warten und zu ändern. Normalerweise besteht ein Verfahren aus drei Hauptabschnitten. Erstens der Prozedurname, der hilft, die Prozedur zu identifizieren. Zweitens die Anweisungen im Inneren des Körpers, die die auszuführende Aufgabe beschreiben. Schließlich die return-Anweisung, die die return-Anweisung bezeichnet.

Die Syntax von Macro ist wie folgt.

proc_name:

Verfahrensorgan

RET

Darüber hinaus rufen einige Funktionen eine Prozedur mit der CALL-Anweisung auf. Diese Anweisung lautet wie folgt.

CALL procedure_name

Schließlich, nach der Ausführung der Prozedur, geht die Kontrolle mit der RET-Anweisung an die aufrufende Prozedur über.

Unterschied zwischen Makro und Prozedur

Definition

Makro ist eine Folge von Anweisungen, die in die Makrodefinition geschrieben werden, um die modulare Programmierung zu unterstützen. Auf der anderen Seite ist eine Prozedur ein Satz von Anweisungen, der eine bestimmte Aufgabe ausführt, und ein Programmierer kann sie wiederholt aufrufen. Dies ist also der grundlegende Unterschied zwischen Makro und Prozedur.

Anzahl der Anweisungen

Ein Makro wird für eine kleine Anzahl von Anweisungen verwendet; meist weniger als zehn Anweisungen, während eine Prozedur für eine große Anzahl von Anweisungen verwendet wird; meistens mehr als zehn Anweisungen. Daher ist dies der Hauptunterschied zwischen Makro und Prozedur.

Speicherbedarf

Außerdem benötigt ein Makro mehr Speicher, während eine Prozedur weniger Speicher benötigt.

ANRUF und RET

Maschinensprache

Im Makro wird der Maschinencode bei jedem Aufruf des Makros generiert. Bei der Prozedur wird der Maschinencode jedoch nur einmal generiert. Daher ist dies ein weiterer Unterschied zwischen Makro und Prozedur.

Parameter übergeben

Im Makro werden die Parameter als Teil einer Anweisung übergeben, die das Makro aufruft. In einer Prozedur hingegen werden die Parameter in Registern und Speicherplätzen des Stapels übergeben. Dies ist also auch ein Unterschied zwischen Makro und Prozedur.

Overhead-Zeit

Außerdem eliminiert ein Makro die Overhead-Zeit, um die Prozedur aufzurufen und das Programm zurückzugeben, während eine Prozedur mehr Overhead-Zeit benötigt, um die Prozedur aufzurufen und zur aufrufenden Prozedur zurückzukehren.

Ausführungsgeschwindigkeit

Außerdem wird ein Makro schneller ausgeführt als eine Prozedur.

Abschluss

Kurz gesagt, Assemblersprache ist eine allgemeine Programmiersprache, die für die Mikroprozessorprogrammierung verwendet wird, und Makro und Prozedur sind zwei Konzepte in Assembly. Der Hauptunterschied zwischen Makro und Prozedur besteht darin, dass ein Makro für eine kleine Anzahl von Anweisungen verwendet wird; meist weniger als zehn Anweisungen, während das Verfahren für eine große Anzahl von Anweisungen verwendet wird; meistens mehr als zehn Anweisungen.

Verweise:

1.Tutorialspoint.com. „Assembly-Makros.“ www.tutorialspoint.com, hier verfügbar. 2.Tutorialspoint.com. „Montageverfahren“. www.tutorialspoint.com, hier verfügbar. 3.„Makros im Mikroprozessor | Vergleich von Verfahren und Makro.“ EEEGUIDE, 13. August 2018, hier verfügbar. 4.Makros, hier verfügbar. 5. „Anweisungen zum Verfahren für Anruf und Rückgabe.“ Prozedur Call and Return Instructions (IA-32 Assembly Language Reference Manual), hier verfügbar.

Bild mit freundlicher Genehmigung:

1. „assembly language“ Von Swtpc6800 de:Benutzer:Swtpc6800 Michael Holley – Eigene Arbeit (Public Domain) über Commons Wikimedia

Was ist der Unterschied zwischen Makro und Prozedur?