A modern computer consists of a number of levels. Ie roughly speaking: your favorite online game or, say, a media player can not directly "communicate" with "iron" computer. Modern programs, including operating systems, written in high level languages, where all teams are a kind of English language (syntax). For example: For thrue Do n = n +1 Done, but such language is not understood by the CPU computer. Processor "understands" a collection of ones and zeros (binary, machine code), he served on the bus. So how do you make friends with almost human processor high-level language, which code for programmers? Let's imagine a computer as an elevator. Upper floor – custom programs written in high level languages.

Basement – logical, digital level where there is only transistors (gates). They only understand the difference between the voltage 1 or 0. Working instructions user program, as it were coming down through the floors until you get to the basement. Help them in this special program compilers and interpreters, roughly speaking – the translators from one language to another. Let's look at these levels from the top.

LEVEL OS command set operating system level (system calls) to any high level language. OS level is always interpreted, ie, commands are executed step by step, without creating them from another program (broadcasting) LEVEL ARCHITECTURE commands Ie a set of machine instructions the processor understands? The program is translated into a set of machine instructions the compiler (if the input C-language) or assembler (input – assembler). But kompillyator should give the output is the set of machine instructions, which supports this processor. Microarchitectural LEVEL (also may be interpreted) Firmware sewn into the processor, which is receiving instructions from the command-level architecture (ie the program to be broadcast in native code) performs a series of instructions for the processor. Ie we got a Native input statement: write or read something, and already processor microcode cares about the internal implementation of the instructions (commands to move the counter, then read address command, then the command itself, and so on) Digital logic level Hardware (Gates) Yuriy Shpak. Computer network engineer. Always glad to see you online computer help Kiev