Język maszynowy: Różnice pomiędzy wersjami

[wersja przejrzana][wersja przejrzana]
Usunięta treść Dodana treść
m →‎Kod maszynowy: poprawa linków
Linia 12:
W systemach z rodziny [[DOS]]/[[Microsoft Windows|Windows]] w kodzie maszynowym zapisane są programy umieszczone w plikach typu ''com''. Pliki typu ''exe'' zawierają ponadto dodatkowe informacje, np. adresy skoków, które są ustawiane w momencie wczytywania programu do pamięci komputera (wersja 16-bitowa), a także informacje potrzebne do [[łączenie|łączenia]] programu z [[Biblioteka dynamiczna|bibliotekami dynamicznymi]] ([[DLL]]).
 
Kod maszynowy nie może być wykonywany przez procesory innego typu, niż ten, dla którego zostały napisane. Niesie to za sobą wiele problemów związanych z przenośnością programów. Aby ich uniknąć rozpowszechnia się programy w formie [[kod źródłowy|kodu źródłowego]] (np. oprogramowanie [[Wolne i Otwarte Oprogramowanie|FLOSS]]) lub w formie [[Kod bajtowy|kodu pośredniego]] (np. [[Java]], [[.NET Framework|.NET]]).
Postać i treść kodu maszynowego zależy nie tylko od kodu źródłowego programu, ale też od [[translator]]a, [[system operacyjny|systemu operacyjnego]], wersji [[biblioteka (informatyka)programistyczna|bibliotek]], typu procesora i jego języka maszynowego. Języki wysokiego poziomu wraz z odpowiednimi bibliotekami i kompilatorami umożliwiającą użycie tego samego programu źródłowego do budowy programu pracującego na różnych systemach operacyjnych, różnych procesorach, itd. Niepoprawnie napisany kod źródłowy może powodować problemy podczas procesu tłumaczenia go na niektóre postacie kodu maszynowego.
 
Kod źródłowy w [[asembler]]ze jest silnie związany z konkretną architekturą procesora i zazwyczaj nie można go uruchomić na innej bez wprowadzania zmian.