Instruction system The instruction system is the language system of computer hardware, also called machine language. It refers to the set of all instructions that the computer can execute. It describes all the control information and "logical judgment" capabilities in the computer. The instruction systems of different computers contain different types and numbers of instructions; they generally include arithmetic operation type, logical operation type, data transfer type, judgment and control type, shift operation type, bit (bit string) operation type, input and output Type and other instructions.
The operating environment of this tutorial: Windows 7 system, Dell G3 computer.
Instruction system The instruction system is the language system of computer hardware, also called machine language. It refers to the set of all instructions that the computer can execute. It is the main interface between software and hardware, reflecting The basic functions of a computer. From a system architecture perspective, it is the primary attribute of the computer as seen by the system programmer. Therefore, the instruction system represents the basic functions of the computer, determines the capabilities required by the machine, and also determines the format of the instructions and the structure of the machine. Designing the instruction system is to choose whether some basic operations in the computer system (including operating systems and high-level languages) should be implemented by hardware or software, and whether certain complex operations should be implemented by a dedicated instruction or a series of basic instructions. Instruction implementation, and then specifically determine the instruction format, type, operation and access method of the operands of the instruction system.
The command system describes all the control information and "logical judgment" capabilities in the computer. The instruction systems of different computers contain different types and numbers of instructions. Generally include arithmetic operation type, logical operation type, data transfer type, judgment and control type, shift operation type, bit (bit string) operation type, input and output type and other instructions. The instruction system is an important factor that characterizes the performance of a computer. Its format and functions not only directly affect the hardware structure of the machine, but also directly affect the system software and the scope of application of the machine.
An instruction is a statement in machine language. It is a set of meaningful binary codes. The basic format of the instruction is as follows: opcode field and address code field, where the opcode specifies the operation nature and function of the instruction. The address code gives the operand or the address of the operand.
Instruction format
The computer instruction format has a great relationship with the machine's word length, memory capacity and instruction function. From the perspective of facilitating program design, increasing parallelism of basic operations, and improving instruction functionality, instructions should contain a variety of information. However, in some instructions, because part of the information may be useless, this will waste the storage space occupied by the instruction and increase the number of memory accesses, which may actually affect the speed. Therefore, how to design the instruction format reasonably and scientifically so that the instruction can not only give enough information, but also make its length match the word length of the machine as much as possible, so as to save storage space, shorten the instruction fetching time, and improve the performance of the machine. This is an important issue in instruction format design.
Computers process various data by executing instructions. In order to indicate the source of data, the destination of operation results and the operation performed, an instruction must contain the following information:
(1) Operation code. It specifies the nature and function of the operation. A computer may have dozens to hundreds of instructions, each instruction has a corresponding operation code, and the computer completes different operations by recognizing the operation code.
(2) Address of the operand. The CPU can obtain the required operands through this address.
(3) Storage address of the operation result. The result of processing the operand is saved at this address for reuse.
(4) The address of the next instruction.
When executing a program, most instructions are fetched from the main memory in order and executed. Only when a transfer instruction is encountered, the execution order of the program will change. In order to compress the length of instructions, a program counter (Program Counter, PC) can be used to store the instruction address. Every time an instruction is executed, the instruction address of the PC is automatically set to 1 (assuming that the instruction only occupies one main memory unit), indicating the address of the next instruction to be executed. When a transfer instruction is encountered, the transfer address is used to modify the contents of the PC. Because of the use of PC, the address of the next instruction to be executed does not need to be explicitly given in the instruction.
An instruction actually includes two kinds of information, namely operation code and address code. The operation code (OperationCode, OP) is used to represent the operation to be completed by the instruction (such as addition, subtraction, multiplication, division, data transfer, etc.). Its length depends on the number of instructions in the instruction system. The address code is used to describe the operand of the instruction. It either directly gives the operand, or indicates the memory address or register address of the operand (that is, the register name).
An instruction is a statement in machine language. It is a set of meaningful binary codes. The basic format of the instruction is as follows: opcode field and address code field. The opcode specifies the operating nature and function of the instruction, and the address code gives The operand or the address of the operand is out.
The instruction includes two parts: the opcode field and the address field. According to the number of addresses involved in the address field, the common instruction formats are as follows.
① Three-address instruction: A1 and A2 in the general address field determine the first and second operand addresses respectively, and A3 determines the result address. The address of the next instruction is usually given sequentially by the program counter. ② Two-address instruction: A1 in the address field determines the first operand address, and A2 determines the second operand address and result address at the same time.
③Single address instruction: A in the address field determines the address of the first operand. Fixed use of a certain register to store the second operand and operation result. Their addresses are therefore implicit in the instructions.
④Zero address instruction: In a stack computer, the operands are generally stored in the two units on the top of the push-down stack, and the results are placed on the top of the stack. The addresses are implicit, so most instructions only have operations code but no address field.
⑤Variable address number instruction: The number of addresses involved in the address field changes with the operation definition. For example, the number of addresses in the instructions of some computers can be as few as 0 and as many as 6.
For more related knowledge, please visit the FAQ column!
The above is the detailed content of What is a command system. For more information, please follow other related articles on the PHP Chinese website!