Uživatelské nástroje

Nástroje pro tento web


1gl

1GL: První generace programovacích jazyků

1GL (First-Generation Language) představuje strojový kód (machine code). Je to jediný jazyk, kterému procesor počítače (CPU) rozumí přímo, bez nutnosti jakéhokoliv překladu či interpretace.

Data i instrukce jsou v této generaci reprezentovány výhradně jako binární řetězce (nuly a jedničky).

1. Charakteristika 1GL

V éře 1GL neexistovaly žádné kompilátory ani interpretery. Programátor musel psát instrukce přímo pro konkrétní architekturu procesoru.

  • Binární reprezentace: Vše je zapsáno jako sekvence $0$ a $1$.
  • Závislost na hardwaru: Program napsaný pro jeden typ počítače nebylo možné spustit na jiném typu (např. kód pro ENIAC nebyl přenositelný).
  • Přímé ovládání: Programátor má absolutní kontrolu nad každým registrem a paměťovou adresou procesoru.

2. Ukázka kódu (Konceptuální)

Zatímco ve vyšších jazycích napíšeme `x = 5 + 2`, v 1GL by instrukce pro procesor mohla vypadat takto:

01101101 00000101 00000010
  • `01101101` – Operační kód (Opcode) pro instrukci „SČÍTEJ“.
  • `00000101` – První hodnota (5).
  • `00000010` – Druhá hodnota (2).

3. Výhody a nevýhody

Výhody Nevýhody
Maximální rychlost: Kód běží okamžitě bez prodlevy způsobené překladem. Extrémní náročnost: Člověk chybuje při zápisu dlouhých řad nul a jedniček.
Efektivita: Minimální nároky na paměť, protože kód obsahuje jen to nejnutnější. Nulová přenositelnost: Kód je vázán na konkrétní procesor.
Kontrola: Možnost využít specifické instrukce daného čipu. Těžké ladění (Debugging): Najít chybu v binárním kódu je téměř nemožné.

4. Historický kontext

První generace byla dominantní v 40. a počátkem 50. let 20. století. Programátoři tehdy fyzicky přepínali spínače nebo používali děrné štítky, aby vložili binární instrukce do paměti počítače.

5. Evoluce jazyků

1GL byla brzy nahrazena vyššími generacemi, které usnadnily lidem práci:

  • 2GL (Assembly): Nahradilo nuly a jedničky mnemotechnickými zkratkami (např. `ADD`, `MOV`).
  • 3GL (C, Java, Python): Přiblížilo programování lidské řeči a matematice.

Související články:

Tagy: historie programming_languages 1GL machine_code computer_science

1gl.txt · Poslední úprava: autor: admin