After the assembly language is created it is necessary to determine how to represent each instruction as a number. |
어셈블리 언어를 만든 다음에는 각 명령어를 숫자로 나타내는 방법을 결정해야 합니다. |
This establishes a one-to-one correspondence between each instruction in the assembly language and each instruction code in the set of instruction codes. |
이는 어셈블리 언어의 각 명령어와 명령어 코드 세트의 각 명령어 코드 사이에 일대일 대응을 설정합니다. |
Converting a program from assembly language to instruction codes is called assembling, and conversion from instruction codes back into assembly language is called disassembling. |
프로그램을 어셈블리 언어에서 명령어 코드로 변환하는 것을 어셈블 링이라고하며, 명령어 코드에서 어셈블리 언어로 다시 변환하는 것을 디스 어셈블 링이라고합니다. |
Several choices we must make at this point are: |
이 시점에서 우리가 해야 할 몇 가지 선택 사항은 다음과 같습니다. |
What number is used to represent each assembly language instruction? |
각 어셈블리 언어 명령어를 나타내는 데 사용되는 숫자는 무엇입니까? |
How are instruction operands encoded? |
명령어 피연산자는 어떻게 인코딩됩니까? |
Are operands part of the instruction word (remember, by word I mean number), or are they separate words (numbers)? |
피연산자는 명령어의 일부입니까 (단어는 숫자를 의미한다는 것을기억하십시오), 또는 단어 (숫자)를 구분합니까? |
First, to answer the last question, since there are only small numbers of instructions and registers in this VM it should not be very difficult to encode all operands in a single instruction word, even if (for the sake of simplicity) I were to use a 16-bit instruction word. |
우선, 마지막 질문에 대답하기 위해,이 VM에 있는 명령어와 레지스터의 수가 적기 때문에 (단순화를 위해) 16비트 명령어를 사용했다고 하더라도 하나의 명령어에서 모든 피연산자를 인코딩하는 것이 어렵지 않아야 합니다. |
Thus, a 16-bit number written in hexadecimal has 4 digits, giving us easy access to 4 information fields, each containing 16 variations (0-9 and A-F). |
따라서 16 진수로 작성된 16 비트 숫자는 4 자리 숫자로 구성되어 각각 16 개의 변형 (0-9 및 A-F)을 포함하는 4 개의 정보 필드에 쉽게 액세스 할 수 있습니다. |
The first digit of a machine word will be the instruction number. |
기계 단어의 첫 번째 숫자는 명령 번호입니다. |
This gives our VM the potential for having up to 16 different instructions. |
이로써 VM은 최대 16 개의 다른 명령어를 가질 수 있습니다. |
This is a small amount by contemporary standards, but it is plenty for our example virtual machine. |
이것은 현대 표준에 의한 소량이지만, 가상 머신의 예는 충분히 있습니다. |
The next three digits will be used for the operands. |
다음 3 자리 숫자가 피연산자에 사용됩니다. |
These can be used as three 1-digit operands, two operands of 1 and 2 digits, or a single 3-digit operand. |
3 개의 1 자리 피연산자, 1과 2 자리의 피연산자 두 개 또는 단일 3 자리 피연산자로 사용할 수 있습니다. |
Having made these decisions, let us now establish the encoding. |
이러한 결정을 내린 지금 인코딩을 설정해 보겠습니다. |
Recall that we have 16 instruction numbers available. |
우리는 16 개의 명령 번호를 사용할 수 있다는 것을 상기하십시오. |
The halt instruction will be instruction 0, and there is an important reason for choosing 0 for this instruction. |
halt 명령어는 명령어 0이 될 것이고,이 명령어에 대해 0을 선택해야하는 중요한 이유가 있습니다. |
Since empty space in the computer's memory will most likely be filled with 0s, any run-away program will eventually encounter a 0 and attempt to execute this instruction, immediately halting the program. |
컴퓨터 메모리의 빈 공간은 0으로 채워질 가능성이 큽니다. 런 어웨이 프로그램은 결국 0을 만나고이 명령을 실행하여 프로그램을 즉시 중단합니다. |