Uživatelské nástroje

Nástroje pro tento web


it:lang:1gl

1GL: První generace programovacích jazyků

1GL (First-Generation Language) označuje strojový kód (machine code). Je to jediný jazyk, kterému procesor (CPU) rozumí přímo a nativně. V této generaci neexistuje žádná abstrakce; programátor komunikuje s hardwarem pomocí binárních dat.

1. Charakteristika 1GL

V éře první generace (přibližně 40. léta 20. století) neexistovaly kompilátory ani editory kódu. Programování znamenalo přímý zápis instrukcí pro konkrétní architekturu.

  • Binární forma: Instrukce jsou tvořeny řetězci nul a jedniček ($0$ a $1$).
  • Hardwarová závislost: Kód je vázán na konkrétní procesor. Program pro jeden stroj nelze spustit na jiném (nulová portabilita).
  • Absolutní kontrola: Programátor přímo ovládá registry procesoru a adresy v operační paměti.

2. Jak vypadá strojový kód?

Každá instrukce v 1GL se obvykle skládá ze dvou částí:

1. **Operační kód (Opcode):** Říká procesoru, co má udělat (např. sečíst, přesunout, porovnat).
2. **Operand:** Určuje data nebo adresu v paměti, se kterými se má pracovat.

Příklad (konceptuální): Instrukce pro sečtení dvou čísel může vypadat takto:

10110000 01100001

(Kde první část může znamenat „vlož do registru“ a druhá část je hodnota $97$ v binární soustavě).

3. Výhody a nevýhody

Výhody Nevýhody
Maximální rychlost: Žádný překlad nezpomaluje běh programu. Extrémní náročnost: Člověk velmi snadno udělá chybu v dlouhém řetězci bitů.
Efektivita: Program využívá hardware na 100 % bez jakékoli režie. Nemožnost ladění: Najít chybu (bug) v tisících nul a jedniček je téměř nadlidský úkol.
Žádný překladač: Počítač nepotřebuje žádný další software k pochopení kódu. Nepřenositelnost: Při změně počítače je nutné celý program napsat znovu.

4. Historické zajímavosti

  • Děrné štítky: Programy v 1GL se často zadávaly pomocí děrných štítků nebo fyzickým přepínáním spínačů na předním panelu počítače.
  • Programátorky a programátoři: První programátoři (často ženy, jako např. operátorky stroje ENIAC) museli znát elektrické schéma počítače, aby pochopili, jak instrukce fyzicky protékají obvody.

5. Přechod k vyšším generacím

Kvůli obrovské chybovosti a únavě programátorů vznikla potřeba nahradit čísla slovy. To vedlo k vytvoření:

  • 2GL (Assembly): Nahradilo binární kódy mnemotechnickými zkratkami (např. `ADD` místo `1011`).

Související články:

Tagy: historie 1GL machine_code binary cpu

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