Heim >häufiges Problem >Woraus besteht Maschinensprache, die Computer direkt erkennen können?
Die Maschinensprache, die der Computer direkt erkennen kann, besteht aus zwei Teilen: Opcode und Operand. Der Opcode gibt die Operation der Anweisung an, die das Schlüsselwort in der Anweisung ist und nicht als Operand angegeben werden kann Befehl und Computer Das Befehlsformat steht in engem Zusammenhang mit der Wortlänge, der Speicherkapazität und der Befehlsfunktion der Maschine.
Maschinensprache ist eine Programmsprache
oder ein Anweisungscode
, den die Maschine direkt erkennen kann. Jeder Operationscode muss nicht übersetzt werden Code innerhalb des Computers wird verwendet, um ihn zu vervollständigen, oder er bezieht sich auf eine Programmiersprache oder einen Befehlscode, der von der Maschine ohne Übersetzung direkt verstanden und akzeptiert werden kann. Maschinensprache verwendet absolute Adressen und absolute Opcodes. Verschiedene Computer verfügen über eigene Maschinensprachen, also Befehlssysteme. Aus Sicht der Verwendung ist Maschinensprache die Sprache der niedrigsten Ebene. 程序语言
或指令代码
,勿需经过翻译,每一操作码在计算机内部都有相应的电路来完成它,或指不经翻译即可为机器直接理解和接受的程序语言或指令代码。机器语言使用绝对地址和绝对操作码。不同的计算机都有各自的机器语言,即指令系统。从使用的角度看,机器语言是最低级的语言。
机器语言指令是一种二进制代码,由操作码和操作数两部分组成。操作码规定了指令的操作,是指令中的关键字,不能缺省。操作数表示该指令的操作对象。 计算机的指令格式与机器的字长、存储器的容量及指令的功能都有很大的关系。
从便于程序设计、增加基本操作并行性、提高指令功能的角度来看,指令中应包含多种信息。但在有些指令中,由于部分信息可能无用,这将浪费指令所占的存储空间,并增加了访存次数,也许反而会影响速度。
因此,如何合理、科学地设计指令格式,使指令既能给出足够的信息,又使其长度尽可能地与机器的字长相匹配,以节省存储空间,缩短取值时间,提高机器的性能,这是指令格式设计中的一个重要问题。
计算机是通过执行指令来处理各种数据的。为了指出数据的来源、操作结果的去向及所执行的操作,一条指令必须包含下列信息:
(1)操作码。它具体说明了操作的性质及功能。一台计算机可能有几十条至几百条指令,每一条指令都有一个相应的操作码,计算机通过识别该操作码来完成不同的操作。
(2)操作数的地址。CPU通过该地址就可以取得所需的操作数。
(3)操作结果的存储地址。把对操作数的处理所产生的结果保存在该地址中,以便再次使用。
(4)下条指令的地址。执行程序时,大多数指令按顺序依次从主存中取出执行,只有在遇到转移指令时,程序的执行顺序才会改变。为了压缩指令的长度,可以用一个程序计数器(ProgramCounter,PC)存放指令地址。每执行一条指令,PC的指令地址就自动+1(设该指令只占一个主存单元),指出将要执行的下一条指令的地址。当遇到执行转移指令时,则用转移地址修改PC的内容。由于使用了PC,指令中就不必明显地给出下一条将要执行指令的地址。
一条指令实际上包括两种信息即操作码
和地址码
🎜 (1) Operationscode. Es legt die Art und Funktion der Operation fest. Ein Computer kann Dutzende bis Hunderte von Anweisungen haben, jede Anweisung verfügt über einen entsprechenden Operationscode, und der Computer führt verschiedene Operationen aus, indem er den Operationscode erkennt. 🎜🎜(2) Die Adresse des Operanden. Über diese Adresse kann die CPU die benötigten Operanden erhalten. 🎜🎜(3) Speicheradresse des Operationsergebnisses. Das Ergebnis der Verarbeitung des Operanden wird zur Wiederverwendung an dieser Adresse gespeichert. 🎜🎜(4) Die Adresse der nächsten Anweisung. Beim Ausführen eines Programms werden die meisten Anweisungen der Reihe nach aus dem Hauptspeicher abgerufen und ausgeführt. Nur wenn eine Übertragungsanweisung auftritt, ändert sich die Ausführungsreihenfolge des Programms. Um die Länge der Anweisung zu komprimieren, kann ein Programmzähler (ProgramCounter, PC) zur Speicherung der Anweisungsadresse verwendet werden. Jedes Mal, wenn ein Befehl ausgeführt wird, ist die Befehlsadresse des PCs automatisch +1 (vorausgesetzt, der Befehl belegt nur eine Hauptspeichereinheit) und gibt die Adresse des nächsten auszuführenden Befehls an. Wenn ein Übertragungsbefehl auftritt, wird die Übertragungsadresse verwendet, um den Inhalt des PCs zu ändern. Aufgrund der Verwendung von PC muss die Adresse der nächsten auszuführenden Anweisung nicht explizit in der Anweisung angegeben werden. 🎜🎜Eine Anweisung enthält eigentlich zwei Arten von Informationen, nämlichAus der Perspektive der Erleichterung des Programmdesigns, der Erhöhung der Parallelität grundlegender Operationen und der Verbesserung der Befehlsfunktionalität sollten Anweisungen eine Vielzahl von Informationen enthalten. Da jedoch in einigen Anweisungen ein Teil der Informationen möglicherweise nutzlos ist, wird dadurch der von der Anweisung belegte Speicherplatz verschwendet und die Anzahl der Speicherzugriffe erhöht, was sich tatsächlich auf die Geschwindigkeit auswirken kann. Wie gestaltet man daher das Anweisungsformat vernünftig und wissenschaftlich, damit die Anweisung nicht nur genügend Informationen liefern kann, sondern auch ihre Länge so weit wie möglich an die Wortlänge der Maschine anpasst, um Speicherplatz zu sparen und zu verkürzen? Zeit zu sparen und die Leistung der Maschine zu verbessern, ist ein wichtiges Thema bei der Gestaltung von Befehlsformaten.
Computer verarbeiten verschiedene Daten, indem sie Anweisungen ausführen. Um die Quelle der Daten, das Ziel des Operationsergebnisses und die durchgeführte Operation anzugeben, muss eine Anweisung die folgenden Informationen enthalten:
Operationscode
und Adresscode
. Der Operationscode (OperationCode, OP) wird verwendet, um die von der Anweisung auszuführende Operation darzustellen (z. B. Addition, Subtraktion, Multiplikation, Division, Datenübertragung usw.). Seine Länge hängt von der Anzahl der Anweisungen im Anweisungssystem ab . Der Adresscode wird verwendet, um den Operanden des Befehls zu beschreiben. Er gibt entweder direkt den Operanden an oder gibt die Speicheradresse oder Registeradresse (dh den Registernamen) des Operanden an. 🎜🎜🎜Wenn Sie mehr über das Erlernen des Programmierens erfahren möchten, achten Sie bitte auf die Spalte „PHP-Schulung“! 🎜🎜🎜Das obige ist der detaillierte Inhalt vonWoraus besteht Maschinensprache, die Computer direkt erkennen können?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!