Machine Language
It is the language that the CPU understands, consisting of a binary sequence, whose rules are defined by each architecture.
It is recommended to generate through a compiler of another language of higher level,
but you can open a hexadecimal editor, and you can type everything using 0123456789abcdef
characters, which is not very practical.
Then you will need a way to load the code into memory, unless you also write the bytes of the executable and already save as .exe
.
The maintainability is very low, and it is impossible to comment on the code.
Turing machines - Esoteric languages
Other alternatives would be basic implementations of Turing machines . There are several languages:
-
Brainfuck : this is to flake off any human skull ... it's a minimalist language, Turing-Complete and so it is capable of doing whatever any other language is capable of doing.
Wikipedia example - "Hello World!" program:
++++++++++[>++++++++>+++++++++++
>---------->+++>++++++++>+++++++
+++++>+++++++++++>++++++++++>+++
++++++++>+++<<<<<<<<<<-]>-.>--.>
++++.>++.>---.>---.>.>.>+.>+++.,
Online interpreter (google and type online brainfuck interpreter
):
-
Piet : The language is programmed through a Bitmap ... so there are many editors.
Example - test if a number is prime:
Run the example above
-
Other esoteric languages : the languages above are the ones I found most interesting but there are others. This link from WikiPedia has a listing, which includes those previously submitted.
Hardware description language (LDH or HDL in English)
hardware description language are used to model the operation of a hardware, assuming that this is done using logic gates, rather than instructions interpreted by a CPU.
These languages can be run and debug like any other, through a simulation of the logic gates, of the load flows in the semiconductors, which in the end change DDPs and these are finally interpreted as signals 1 and 0, on / off , etc.
There are in this group of languages, those of the lowest level and the highest level.
Example of wikipedia: VHDL
cmp : process
begin
if A = B then
C ⇐ 0;
else
C ⇐ 1;
end if;
end process cmp;