0

According to Google an assembler is a program for converting instructions written in low-level symbolic code (assembly language?) into machine code.

Machine code being a computer programming language consisting of binary or hexadecimal instructions which a computer can respond to directly.

Is microcode the same as machine code?

If yeah, what's the difference between an assembler and a control unit then. Because from my understanding the control unit takes the assembly level instruction and maps it to microcode.

I'd really appreciate some clarity as to when each is used in relation to one another?

Thanks

Bryan
  • 41
  • 4
  • 2
    The assembler is software and the control unit is hardware. Microcode can be considered machine code just not for the native ISA. The control unit may map the native machine code to microcode, but it does not deal with assembly which is a human readable text format. – Jester Feb 23 '22 at 15:38
  • 2
    @Jester Ah ok, So let's say an operating system is wrote in a specific assembly language. The assembler then converts that to 1's a d 0's. Then in the actual computer system. The OS code (1's and 0's) is in main memory. The controller reads these instructions and if the controller is a microprogrammed control unit the instruction is mapped to a number of microcode instructions from ROM. Is that the general idea or am I off by a mile? – Bryan Feb 23 '22 at 16:09
  • @Bryan: Your description in this comment is accurate enough. The numeric data created by the assembler is the machine code. A related term is opcodes. – ecm Feb 23 '22 at 16:11
  • Thank you, opcode of the instruction is used to map to a number of microinsttuctions. If the cpu facilitates microcode for that particular instruction, that is. Correct? – Bryan Feb 23 '22 at 16:37

0 Answers0