Computers are composed of transistors. A transistor is an electrical device used for switching electrical signals on or off. Computer management involves using digital circuits, and transistors act as a switch to pass or stop electrical impulse within the circuit. The “on” mode is termed as “1”, and the “off” mode is referred to as “0”. Thus, the computers operate through a binary numeric form by using only two options – 1’s and 0’s (as opposed to decimal system that uses 0 1 2 3 … 9). Combinations of these two modes encode all information the computer actually understands. In the decimal system, five is encoded as “5”, while in the computer five must be encoded as “101” to be recognized by the transistors.
It is practically impossible for a human to communicate directly with the transistors of the computer using the digital encoding system. To overcome this obstacle, programmers have developed a multi-level hierarchy. On the lowest stage, the computer operates with 1 and 0. This is actually the machine language, which works directly with the hardware. The next stage involves assembly language, in which statements correspond to machine codes and their instructions. Assemblers are special programs that ‘translate’ abstract prescriptions into the machine language. Next, a high-level language makes dealing with the computer more abstract and more adapted to human logics and way of thinking. The next generation of programming languages, such as C or Pascal, was developed to make language structures more understandable and effective.
Computers do not understand, but they follow pre-set instructions. The appearance of understanding depends on adequate programming in fact. Due to their transistor nature, the only language the computers use is the binary code. However, smart programs has made it unnoticeable to users that machine language has nothing in common with our understanding of communication.