LC-3 je nízkoúrovňový programovací jazyk určený pro výuku informatiky. Vyvinuli ho Dr. Joel Adams a Dr. Sanjay Patel na Calvin College.
LC-3 je založen na 16bitovém mikroprocesoru Little Computer 3 (LC-3), který v roce 1985 navrhl James L. Peterson. LC-3 je oblíbenou volbou pro výuku informatiky, protože je dostatečně jednoduchý, aby ho studenti snadno pochopili, ale přesto je schopen spouštět složité programy.
Instrukční sada LC-3 obsahuje něco přes 50 instrukcí, které jsou dostatečně jednoduché na to, aby mohly být implementovány v hardwaru bez potřeby mikrokódu ROM. Díky tomu se LC-3 snadno navrhuje a sestavuje a také se snadno vyučuje.
LC-3 je asemblerový jazyk, což znamená, že programy se píší v textovém editoru a poté se sestavují do strojového kódu, který lze na LC-3 spustit. Jazyk assembleru je nízkoúrovňový programovací jazyk, což znamená, že je blízký strojovému kódu, který LC-3 spouští. Díky tomu je snadné pochopit, co LC-3 dělá, ale také je obtížné psát složité programy.
LC-3 je von Neumannova architektura, což znamená, že má jeden sdílený paměťový prostor pro kód i data. To usnadňuje psaní programů, které se samy modifikují, ale také ztěžuje psaní programů, které potřebují přistupovat k více pamětem.
LC-3 je harvardská architektura, což znamená, že má oddělené paměťové prostory pro kód a data. To usnadňuje psaní programů, které přistupují k více pamětem, ale také ztěžuje psaní programů, které se samy modifikují.
LC-3 je architektura RISC, což znamená, že má malý počet instrukcí, které se provádějí velmi rychle. Díky tomu je LC-3 rychlý, ale také ztěžuje psaní programů, které potřebují provádět složité operace.
LC-3 je architektura CISC, což znamená, že má velký počet instrukcí, které se vykonávají pomalu. Díky tomu je LC-3 pomalý, ale také usnadňuje psaní programů, které potřebují provádět složité operace.
LC-3 je 8bitový mikroprocesor, což znamená, že dokáže ukládat a zpracovávat 8bitová čísla. Díky tomu je LC-3 omezen ve velikosti čísel, která může ukládat a zpracovávat, ale také usnadňuje práci s bajty dat.
LC-3 je 16bitový mikroprocesor, což znamená, že dokáže ukládat a zpracovávat 16bitová čísla. Díky tomu je LC-3 omezen ve velikosti čísel, která dokáže ukládat a zpracovávat, ale také umožňuje snadnou práci se slovy dat.
LC-3 je 32bitový mikroprocesor, což znamená, že dokáže ukládat a zpracovávat 32bitová čísla. Díky tomu je LC-3 omezen ve velikosti čísel, která dokáže ukládat a zpracovávat, ale zároveň umožňuje snadnou práci s dvojslovnými daty.
LC-3 má malý počet registrů, které slouží k ukládání dat a adres paměti. LC-3 má osm univerzálních registrů, které lze použít k ukládání dat. LC-3 má také dva speciální registry, které slouží k ukládání adres paměti.
LC-3 má omezený počet adresovacích režimů, které se používají k výpočtu adres paměti. LC-3 má pět adresovacích režimů: okamžitý, přímý registr, nepřímý registr, automatický přírůstek a automatický úbytek.
LC-3 má omezenou sadu instrukcí, což je malá sada instrukcí, které může LC-3 provádět. LC-3 má něco přes 50 instrukcí, které jsou dostatečně jednoduché na to, aby mohly být implementovány hardwarově bez potřeby mikrokódu ROM.
LC-3 je jednoduchý mikroprocesor, což usnadňuje jeho pochopení a výuku. LC-3 je také rychlý a dokáže spouštět složité programy.