!cat hello.c

!gcc -S hello.c

!cat hello.s

!gcc hello.s -o hello

!file hello

!./hello

!wc -c < hello

"""
Explanation: <h1>Table of Contents<span class="tocSkip"></span></h1>
<div class="toc"><ul class="toc-item"><li><span><a href="#A-bit-of-history-about-computer-programing" data-toc-modified-id="A-bit-of-history-about-computer-programing-1"><span class="toc-item-num">1&nbsp;&nbsp;</span>A bit of history about computer programing</a></span><ul class="toc-item"><li><span><a href="#Contents" data-toc-modified-id="Contents-1.1"><span class="toc-item-num">1.1&nbsp;&nbsp;</span>Contents</a></span></li><li><span><a href="#Assembling-(1947)" data-toc-modified-id="Assembling-(1947)-1.2"><span class="toc-item-num">1.2&nbsp;&nbsp;</span><a href="https://en.wikipedia.org/wiki/Assembly_language#Historical_perspective" target="_blank">Assembling</a> (1947)</a></span></li><li><span><a href="#Compiling-(1951)" data-toc-modified-id="Compiling-(1951)-1.3"><span class="toc-item-num">1.3&nbsp;&nbsp;</span><a href="https://en.wikipedia.org/wiki/History_of_compiler_construction" target="_blank">Compiling</a> (1951)</a></span></li><li><span><a href="#Compiling-Java-code-(for-the-Java-virtual-machine)-(1991)" data-toc-modified-id="Compiling-Java-code-(for-the-Java-virtual-machine)-(1991)-1.4"><span class="toc-item-num">1.4&nbsp;&nbsp;</span><a href="https://en.wikipedia.org/wiki/Java_(programming_language)\#History" target="_blank">Compiling Java</a> code (for the Java virtual machine) (1991)</a></span></li><li><span><a href="#Running-Python-code-in-the-Python-virtual-machine-(1989)" data-toc-modified-id="Running-Python-code-in-the-Python-virtual-machine-(1989)-1.5"><span class="toc-item-num">1.5&nbsp;&nbsp;</span><a href="https://es.wikipedia.org/wiki/Historia_de_Python" target="_blank">Running Python</a> code in the Python virtual machine (1989)</a></span></li><li><span><a href="#PVM-(Python-Virtual-Machine)-implementations" data-toc-modified-id="PVM-(Python-Virtual-Machine)-implementations-1.6"><span class="toc-item-num">1.6&nbsp;&nbsp;</span>PVM (Python Virtual Machine) implementations</a></span></li></ul></li></ul></div>

A bit of history about computer programing
Contents

Assembling.
Compiling for the physical CPU.
Compiling for the Java virtual machine.
Compiling for the Python virtual machine.
Python Virtual Machines.

<a id='Assembling'></a>
Assembling (1947)
End of explanation
"""


!gcc hello.c -o hello

!file hello

!wc -c < hello

"""
Explanation: <a id='Compiling'></a>
Compiling (1951)
End of explanation
"""


!cat HelloWorld.java

!javac HelloWorld.java

!javap -c HelloWorld.class

!java HelloWorld

"""
Explanation: <a id='Compiling_Java'></a>
<a href="https://en.wikipedia.org/wiki/Java_(programming_language)\#History">Compiling Java</a> code (for the Java virtual machine) (1991)
End of explanation
"""


!cat hello_world.py

!python hello_world.py 

!python -m dis hello_world.py

"""
Explanation: <a id='Compiling_Python'></a>
Running Python code in the Python virtual machine (1989)
End of explanation
"""


