Skip to main content

Co to jest kompilator?

Kompilator to specjalny typ programu komputerowego, który tłumaczy ludzki plik tekstowy na formularz, który komputer może łatwiej zrozumieć.Na najbardziej podstawowym poziomie komputer może zrozumieć tylko dwie rzeczy, 1 i A 0. Na tym poziomie człowiek będzie działał bardzo powoli i znajdzie informacje zawarte w długim ciągu 1 i 0 niezrozumiałych.Kompilator to program komputerowy, który łączy tę lukę.

Na początku kompilatory były bardzo prostymi programami, które mogły tylko tłumaczyć symbole na bity , 1S i 0, komputer zrozumiał.Programy były również bardzo proste, złożone z serii kroków, które pierwotnie zostały przetłumaczone ręcznie na dane, które komputer mógł zrozumieć.Było to bardzo czasochłonne zadanie, więc części tego zadania zostały zautomatyzowane lub zaprogramowane, a pierwszy kompilator został napisany.Ten program zmontowany lub skompilowany kroki wymagane do wykonania programu krok po kroku.

Te proste kompilatory zostały użyte do napisania bardziej wyrafinowanego kompilatora.Dzięki nowszej wersji można dodać więcej zasad do programu kompilatora, aby umożliwić działanie przez ludzkiego struktury języka naturalnego.Ułatwiło to pisanie programów i pozwoliło większej liczbie osób rozpocząć pisanie programów.Gdy więcej osób zaczęło pisać programy, oferowano więcej pomysłów na temat pisania programów i wykorzystywanych do tworzenia bardziej wyrafinowanych kompilatorów.W ten sposób programy kompilatorów ewoluują, ulepszają i stają się łatwiejsze w użyciu.

Programy kompilatorów mogą być również wyspecjalizowane.Niektóre struktury językowe lepiej nadają się do określonego zadania niż inne, dlatego opracowano określone kompilatory dla określonych zadań lub języków.Niektóre kompilatory to

wieloetapowe lub wielokrotne podanie .Pierwsza przepustka może przyjąć bardzo naturalny język i zbliżyć do zrozumiałego języka komputera.Druga lub nawet trzecia przepustka może przenieść go na ostatni etap, plik wykonywalny.

Wyjście pośrednie w wielostopniowym kompilatorze jest zwykle nazywane

pseudo-kodem , ponieważ komputer nie jest użyteczny.Pseudo-kod jest bardzo ustrukturyzowany, podobnie jak program komputerowy, a nie swobodny i pełen gadatliwy jak język naturalny.Ostateczne wyjście nazywa się plik wykonywalny , ponieważ jest to faktycznie wykonywane lub uruchamiane przez komputer.Rozdzielenie takiego zadania ułatwiło pisanie bardziej wyrafinowanych kompilatorów, ponieważ każde podrzędne zadanie jest inne.Ułatwiło to również komputerowi wskazanie, gdzie miał problem ze zrozumieniem, o co proszono.

Błędy, które ograniczają kompilator w zrozumieniu programu, nazywane są błędami składni

.Błędy w sposobie funkcji programu nazywane Błędy logiczne .Błędy logiczne są znacznie trudniejsze do wykrycia i poprawienia.Błędy składniowe są jak błędy pisowni, podczas gdy błędy logiczne są nieco bardziej jak błędy gramatyczne. Opracowano również programy kompilatorów krzyżowych.Kompilator krzyżowy umożliwia zestaw instrukcji, który jest zapisany dla jednego komputera zaprojektowanego przez określonego producenta i uruchamianie innego komputera przez innego producenta.Na przykład program napisany na komputerze Intel można czasem skompilować, aby uruchomić na komputerze opracowanym przez Motorola.To często nie działa zbyt dobrze.Na poziomie, na którym działają programy komputerowe, sprzęt komputerowy może wyglądać zupełnie inaczej, nawet jeśli mogą wyglądać podobnie do Ciebie.

Kompilacja krzyżowa różni się od posiadania jednego komputera naśladowania innego komputera.Jeśli komputer emuluje inny komputer, udaje, że jest to inny komputer.Emulacja jest często wolniejsza niż kompilacja krzyżowa, ponieważ dwa programy działają jednocześnie, program, który udaje drugi komputer i uruchomiony program.Jednak aby kompilacja krzyżowa działała, potrzebujesz zarówno oryginałuTekst języka naturalnego, który opisuje program i komputer, który jest wystarczająco podobny do oryginalnego komputera, na którym program może funkcjonować na innym komputerze.Nie zawsze jest to możliwe, więc obie techniki są używane.