Przedstawię ci połowę wiedzy którą mam o budowie komputerów jeżeli nie wiesz ;p
"Procesor rozumie tylko jest prąd lub nie ma prądu tzn 1/0 - taki jeden to bit
Na początku programowano pisząc takie sekwencje zero-jedynkowe.
Jakiś taki ciąg 10011000 mógł oznaczać operacje dodaj dla procesora
Ale po tym jak walnela satelita na niebie bo sie programista pomylil (zle cos wpisal) wymyslono nowy system
podzielono bity na bajty 8 bitów = 1 bajt "10100011" to jeden bajt te z kolei na 2 oddzielne 1010 0011 i zastosowano system heksadecymalny
czyli tutaj zamiana 1010 = A 0011 = 3, czyli zapis tego bajtu to A3 i teraz to byl nasz rozkaz jakis. Po rozkazie pozniej podaje sie liczbe lub rejestr (cos jak zmienna) Jak nie wiesz o co chodzi to doczytaj, gdzieś indziej. Ważne tylko jest, że później zastąpiono np. A3 które może oznaczać odejmowanie nazwą SUB tak powstał Assembly i jeden z pierwszych języków którego zadaniem jest zamiana tego SUB, żeby rozumiał procesor czyli na A3 (oraz oczywiście innych rozkazów) i to się fachowo nazywa interpreter, ale był to język niskiejjjj abstrakcji.
I teraz kompilator to program który zamienia ci twój pisany kod w jakimś języku na assembly, a później assembler zamienia ci na heksadecymalne wartości, tudzież jedynki. I tak powstaje program".
Akurat to takie podstawy, które powinien znać chyba każdy programista przynajmniej nie dokładnie (sam nie wiem czy gdzieś się teraz nie walnąłem ^^). Mówię ci to bo znam mnóstwo ludzi (niby programistów), którzy nie odróżniają IDE od kompilatora, bo pominęli takie coś a to ciężki błąd :P