How do computers read code?

How do computers read code?

When you first learned to write code, you probably realized that computers don’t really have any common sense. You need to tell a computer exactly what you want. But do you know about all the work the computer does to understand what you mean?


Video links:

Crash Course Computer Science:

Building the Bits and Qubits

Tools used:

Monospaced font:

Images and other visuals:

The IDE in the intro:

Python scripting:

Source code distribution example:
Apache httpd on GitHub

Executable distribution examples:
VLC media player

Punch cards:

Early computers:

Complex history of computer languages:

Sublime Text
IntelliJ IDEA
IntelliJ IDEA again…

Print “Hello, world!” command:
Python shell


YouTube audio library:

Call to Adventure
If I Had a Chicken

Premium Beat:
Cutting Edge Technology
Second Time Around

Swoosh 1 sound effect came from here:
…and is under this license:


  1. Excelsoft on October 21, 2019 at 4:02 pm

    Amazing and comprehensive!
    Usually I spend a week to explain all of this to my students (w more details oc), but this is so helpful!

  2. First Name Last Name on October 21, 2019 at 4:02 pm

    *laughs in already just programming in assembly*

  3. QuriOcity on October 21, 2019 at 4:03 pm

    Love it…

  4. Yixe on October 21, 2019 at 4:04 pm

    Please make more videos 🙁

  5. game nation on October 21, 2019 at 4:05 pm

    This video is pure knowledge !

  6. Jimmy Draws on October 21, 2019 at 4:06 pm

    Any computer class worth its salt would go through compilers

  7. Kozaker88 on October 21, 2019 at 4:06 pm

    Непогано пояснив, лайк тобі👏👏👏

  8. isaac johnalphonso on October 21, 2019 at 4:09 pm

    Only 5 mins, then I started to see comments

  9. Andrey Sitnikov on October 21, 2019 at 4:10 pm

    Frame of Essence’s “Frame of Essence” only happens once a year. Hello from 2019, my friend.

  10. ViniGameplay on October 21, 2019 at 4:11 pm

    So the thing that you did in that extra video to make the video making process go smoothly is make 1 video a year instead of 2?

  11. Aaron Horne on October 21, 2019 at 4:13 pm

    Awesome video

  12. Warsin on October 21, 2019 at 4:14 pm

    I can’t fucking tell is this Java or C#

  13. DaveByDaylight on October 21, 2019 at 4:18 pm

    "All you did was Python scripting!?" lmao

  14. jf wang on October 21, 2019 at 4:19 pm


  15. Naved on October 21, 2019 at 4:19 pm

    dood i feel like worthless lol

  16. Chris Russell on October 21, 2019 at 4:23 pm

    i cant do C yet, or anything like that. (though i can sort of follow it when having to tackle the firmware on the 3d printers…)

    but i do have the advantage that i learnt about logic gates and binary arithmetic on discrete components before i started learning assembly for pic chips.

    so the whole system makes perfect sense now.

    divison and subtraction are hard operations which involve a few more steps(except for halving, which is a simple shift right). addition and multiplication is easy. doubling especially so (shift left)

    all the compiler does is turn our language into hexadecimal units, which is then fed into the chip as binary. all instructions, data, and variables are binary. just a bunch of switches in parallel basically.+

    and because i work in assembly, and take note of the hex dumps, i can code in binary…

    i draw the line at 8 bits though!

    i gotta learn C. for most purposes its probably easier. its pretty easy to get lost with gotos and skips…

    but when the program is bordering on the limit of ROM… assembly takes longer but is usually far more efficient.

  17. teflontelefon on October 21, 2019 at 4:24 pm

    What if my code identifies as non-binary?

  18. KP Real Soccer on October 21, 2019 at 4:24 pm

    Great video!

  19. Yippee ki-yey on October 21, 2019 at 4:25 pm

    *Lisp* is real pain

  20. sharbel p i b on October 21, 2019 at 4:26 pm


  21. Zahid Abdullah on October 21, 2019 at 4:27 pm


  22. PQCraft Gaming on October 21, 2019 at 4:28 pm

    BTW you can make a compiler using raw assembly or (in my case) switch bus (I made a home-brew computer and entered in programs by using a 0-9 A-D * (E) and # (F) keypad and you just use a switch to change modes. (memAddr and memSet))

  23. Danio Cionini on October 21, 2019 at 4:28 pm

    really good video! explained perfectly

  24. Luca Valentino Colmi on October 21, 2019 at 4:28 pm


  25. Sebastian Feuerstein on October 21, 2019 at 4:29 pm

    My Head Hurts 😭😂

  26. vaio197 on October 21, 2019 at 4:29 pm

    No one programmer knows how to make me understand HOW REALLY THE ABSTRACTION LAYER WORKS. How compiler translate? I mean, how compiler knows 3 is 00000011? I guess there will be a table who tells compiler even the most easy instruction what really is. When you put 3 in your source code, really 00000011 is alocated in some place and compiler read this? Is the ASCII code? I mean, if a type "3" in the keyboard, in C or Phyton, is is really stored like 00000011? Cause no matter what low-level a program be, sometime the code are converted to a electrical signal who open or close logical gates. Even so, 0 and 1, they still are a representation for off/on, closed/open, etc.. Making several google searches, i read about microcode. Is it actually when the "magic" happens? Maybe the instruction set architecture? And again…. how text (although binary) like 00000001 or 00001011 is understanded by the processor? I´m not english speaker, I hope you understand what I mean and I expect someone explain my doubts clearly, if possible xD

  27. Tech stickman on October 21, 2019 at 4:30 pm

    damn how did you get to know my mind question at the starting point?

  28. GreatMCGamer on October 21, 2019 at 4:31 pm

    I haven’t gone trough any classes.
    I’ve only watched youtube videos.
    And half way finished Windows 8.1 app: Solo Learn C++
    And I can’t remember anything about it.

  29. angrywolfjr on October 21, 2019 at 4:35 pm

    the fact you did not do x++ and did x=x+1 hurts my soul

  30. Morpheus x on October 21, 2019 at 4:36 pm

    Soon Ai will be creating code leaving all the programmers jobless .

  31. M Sufiyan on October 21, 2019 at 4:39 pm

    You should have like 100 million subscribers

  32. :D on October 21, 2019 at 4:41 pm

    A problem has been detected and Windows has been shut down to prevent damage to your computer.


  33. Ivan Bryan on October 21, 2019 at 4:41 pm

    Is it wrong that I still write in a programming language that’s 35 years old? 😀

  34. Alex Chabanenko on October 21, 2019 at 4:41 pm

    попробуйте написать на ассемблере программу для микроконтроллера AVR и вы увидите что такое status register, cerry flag и т.д. . Вы узнаете что такое таймеры, стек, макросы. Хотя… не надо, просто продолжайте-> System.out.println("Hello world") и Ваши идеи станут двигателем прогресса.
    P.S. но кто-кто должен написать компилятор для Вас…

  35. Azdim Zul Fahmi on October 21, 2019 at 4:42 pm

    this video made me that I’m nothing

  36. Gian Marco Cialdi on October 21, 2019 at 4:43 pm

    Which assembly was in the video? 8086?

  37. Rakesh Rai on October 21, 2019 at 4:43 pm

    Python is better then C any day

  38. Keine Ahnung on October 21, 2019 at 4:44 pm

    But how does the compiler know, how to convert the assembly–instructions, to hexadecimal?

  39. same same on October 21, 2019 at 4:45 pm

    this is FUNNY!

  40. Phạm Huy on October 21, 2019 at 4:46 pm

    Even when I write "Hello world" there are 20 errors

  41. Anna Jevailn on October 21, 2019 at 4:47 pm

    no one
    my brain: where am I ..? why am I????whoo am I !!????

  42. Gaminsecret on October 21, 2019 at 4:47 pm

    Well I liked this channel

  43. D Man on October 21, 2019 at 4:48 pm

    Why 0 and 1 , why not 0 , 1, and 2 for quantum computers, 2 can be 0 and 1 at the same time :0

  44. Daniel Ramp on October 21, 2019 at 4:52 pm

    My days okey, and how is your day going?

  45. PQCraft Gaming on October 21, 2019 at 4:52 pm

    I opened a 32-bit .asm file and the first 10 characters were ╩P@_AS÷∩¿@

  46. tremon 36 on October 21, 2019 at 4:54 pm

    Imagine doing all the holes for old computer programs and then you realize you forgot a semicolon….

  47. Varelity on October 21, 2019 at 4:54 pm

    CPU uses a fetch execute cycle. It fetches an instruction from memory, decodes that instruction, and executes the instruction
    Source: Tom Scott, god of the universe

  48. Lærke on October 21, 2019 at 4:57 pm

    I’ve always been curious about that fact.
    When you write a code, how does the computer know that if statements mean so and so. Now I know, cool

  49. Mallchad on October 21, 2019 at 4:57 pm

    I recently though about something that this video touched upon kinda. So if programs such as compilers were written in entirely machine code, even assembly, and the building of transistors for processors that run the robots that build the processes, how awful would it be, and how far would we be set back if we somehow (in a somewhat likely and pending scenario) lose the code and programs that allow us to compile programs…. Even if were to live on another world, we would likely have to take all this knowledge and programs with us, and possibly even a hardware manufacturing robot to even make the hardware for the factories that make us hardware to make the civilisation reasonably advanced in comparison to Earth. Kinda scary how easily we could be set back give a nuclear or digital Armageddon.

  50. Peng on October 21, 2019 at 4:59 pm

    I never got to programming class tho