Rozdíly mezi programovacími jazyky na vysoké a nízké úrovni

Lidé používají programovací jazyky pro instruktáž hardwaru počítače.

Programovací jazyky

Programovací jazyk je jakýkoli jazyk, s nímž mohou lidé naučit počítače. Program je seznam pokynů připravených k dodání do počítače a proveden. Pokyny v podstatě ukládají, pohybují a mění hodnoty v paměti počítače. Tyto hodnoty lze interpretovat několika zařízeními, jako jsou monitory, reproduktory, klávesnice, dotykové podložky nebo myši, které poskytují způsoby komunikace s uživatelem.

Kód stroje

Jazyk nízké úrovně je jazyk, který je blízko k základům počítačového hardwaru. Jazykem nejnižší úrovně je kód stroje, který hardware přímo rozumí a nevyžaduje tlumočení ani překlad. Kód stroje je složen výhradně z řetězců binárních čísel: slavné nuly a ty. I když může udělat vše, co může jiný jazyk dosáhnout (ve skutečnosti ostatní jazyky musí být tlumočníkem přeloženy do strojového kódu), není navržen tak, aby vyhovoval potřebám programátora a vyžaduje důkladnou znalost procesoru a zařízení počítače, kromě toho je pro člověka téměř nemožné ho číst.

Jazyk sestavení

Dalším programovacím jazykem "vyšší" úrovně je montážní jazyk, což je strojový kód, jehož instrukční kódy byly nahrazeny intuitivnějšími příkazy. Například příkaz pro umísťování hodnoty 97 do registru paměti se nazývá AL (v strojním kódu by to byl "10110000 01100001") a v assemblerovém jazyce by to bylo "MOV AL, 97", což je ještě tajný příkaz, ale je mnohem snazší číst. Ačkoli je stále neúčinné psát to a vyžaduje, aby programátor pracoval přímo s počítačovým hardwarem, je to jazykem vyšší úrovně než kód počítače, protože je abstraktnější, tj. Je blíže programátoru.

Jazyky na vysoké úrovni

Moderní programátoři zřídka píší v jazyku sestavení. Místo toho používají jeden z mnoha jazyků na vysoké úrovni, jako jsou C, Java nebo Python, jejichž programy nazývané kompilátory nebo tlumočníci mohou převést na kód stroje. Tyto jazyky zabraňují tomu, aby se programátor musel zapojit do fyzického světa hardwaru a přemístit ho do logické abstrakce: namísto pohybu hexadecimálních hodnot pomocí paměťových registrů programátor pracuje s proměnnými, jejichž obsah může být změněn, se smyčkami lze je opakovat, dokud není splněna podmínka, s logickými výkazy jako IF, AND, THEN, OR a ELSE, mezi dalšími nástroji. Tyto jazyky jsou určeny pro programátora, kteří se podílejí na způsobech, jak lze dosáhnout maximálního výkonu s nejmenšími obtížemi.

Srovnání

Jazyky na vysoké úrovni tento název nedostávají, protože jsou "lepší" než jazyky nízké úrovně. Někdy schopnost komunikovat přímo s procesorem počítače v jazyce sestavy nebo dokonce strojním kódu může vyřešit problémy, které mohou dělat vrstvy abstrakce jazyka na vysoké úrovni. Jazyk na velmi vysoké úrovni se může zabývat pouze určitým operačním systémem, jako je například Microsoft Visual Basic, nebo určitým programem, například "makrami" textového editoru. Tyto programy jsou velmi užitečné pro každého, kdo chce manipulovat s Windows nebo Word, aniž by musel vědět, jak to funguje, ale takový jazyk by nebyl užitečný pro někoho, kdo se pokouší napsat svůj vlastní program a potřebuje jazyk nižší úrovně. Proto programátor zvolí jazyk v závislosti na práci, kterou potřebuje.