Practically in
most computers, individual instructions are stored as machine code with each
instruction being given a unique number (its operation code or opcode for
short). The command to add two numbers together would have one opcode; the
command to multiply them would have a different opcode, and so on. The simplest
computers are able to perform any of a handful of different instructions; the
more complex computers have several hundred to choose from, each with a unique
numerical code. Since the computer's memory is able to store numbers, it can
also store the instruction codes. This leads to the important fact that entire
programs (which are just lists of these instructions) can be represented as
lists of numbers and can themselves be manipulated inside the computer such as
as numeric data. The fundamental concept of storing programs in the computer's
memory alongside the data they operate on is the crux of the von Neumann, or
stored program[citation needed ], architecture. In some cases, a computer might
store some or all of its program in memory that is kept separate on the data it
operates on. This is called the Harvard architecture after the Harvard Mark I
computer. Modern von Neumann computers display some traits of the Harvard
architecture in their designs, such as in CPU caches .
While it is possible to write computer programs as long lists of numbers (machine language ) buying enough this technique was used with many early computers, [58] it is extremely tedious and potentially error-prone to do so in practice, especially for complicated programs. Instead, each basic instruction can be given a short name that is indicative of its function and easy to remember - a mnemonic like ADD, SUB, MULT or JUMP. These mnemonics are collectively known as a computer's assembly language . Converting programs written in assembly language into something the computer can actually understand (machine language) is usually done by a computer program called an assembler.
While it is possible to write computer programs as long lists of numbers (machine language ) buying enough this technique was used with many early computers, [58] it is extremely tedious and potentially error-prone to do so in practice, especially for complicated programs. Instead, each basic instruction can be given a short name that is indicative of its function and easy to remember - a mnemonic like ADD, SUB, MULT or JUMP. These mnemonics are collectively known as a computer's assembly language . Converting programs written in assembly language into something the computer can actually understand (machine language) is usually done by a computer program called an assembler.
No comments:
Post a Comment