Praktycznie wszystko w komputerze składa się z tranzystorów. Jak przebiega proces zamiany kodu źródłowego na ustawianie przez który tranzystor ma przepływać prąd w danym momencie? Poprosiłbym o linka do książki/strony, która by to przedstawiła. Może być po angielsku. Z góry, dzięki.
Jak działa proces programowania?
- Rejestracja: dni
- Ostatnio: dni
- Postów: 24
- Rejestracja: dni
- Ostatnio: dni
- Lokalizacja: Silesia/Marki
- Postów: 5550
Prawdopodobnie najlepsza książka o kompilatorach to Kompilatory ale polecam zacząć od SICP. Na elektronice sie niestety nie znam :(
Interesująca może być też dokumentacja LLVM
- Rejestracja: dni
- Ostatnio: dni
- Postów: 5227
A handbook for making programming languages.
Bez przejścia na hardware
Tutaj gość ładnie to prowadzi, polecam.
- Rejestracja: dni
- Ostatnio: dni
- Postów: 3394
Poczytaj o bramkach logicznych. Zobacz jak są zbudowane i jak działają, a później poszukaj najprostszych, projektowanych z bramek układów, typu liczniki itp.
Poczytaj o Maszynie Turinga.
Zastanów się jak z takich bramek zbudować urządzenie, którego "programem" jest kilka bitów i w zależności od stanu tych pojedynczych bitów, wykonuje sekwencję takich, bądź innych operacji.
- Rejestracja: dni
- Ostatnio: dni
- Postów: 8488
Jak przebiega proces zamiany kodu źródłowego na ustawianie przez który tranzystor ma przepływać prąd w danym momencie?
Ale to straszny przeskok myślowy. Od kodu źródłowego do prądu w tranzystorach jest bardzo daleka droga.
- Rejestracja: dni
- Ostatnio: dni
- Postów: 3581
Obejrzyj sobie kanał Bena Etera na YT : https://eater.net/8bit/
Wczoraj jeden z kolegów pochwalił się wykonaniem symulatora tego komputera w tym wątku Rozwój osobisty to strasznie trudne i nudne ...
- Rejestracja: dni
- Ostatnio: dni
- Postów: 394
- Rejestracja: dni
- Ostatnio: dni
- Lokalizacja: Silesia/Marki
- Postów: 5550
KamilAdam napisał(a):
Na elektronice sie niestety nie znam :(
Cały dzień o tym myślałem i coś sobie ze studiów przypomniałem. Kolejność jaką w miarę mieliśmy (powinniśmy mieć bo jak zwykle na studiach był chaos) to:
- Tranzystory
- Bramki logiczne - chociaż łatwiejsze do zrozumienia są bramki AND i OR to często używa się NAND i NOR bo są prostsze do budowy i wszystko można zbudować z samych bramek NAND lub z samych bramek NOR (Polecam prawa De Morgana). Bramki można kupić normalnie w sklepie z układach scalonych
- Przerzutniki asynchroniczne RS - na schematach logicznych buduje się je bramek w praktyce z tranzystorów
- Przerzutniki synchroniczne JK - z dwóch przerzutników RS można zbudować jeden przerzutnik JK
- Rejestry - Jeden przerzutnik JK pamięta jeden bit. Jak połączysz 8 przerzutników to masz jeden rejestr jednobajtowy (przy założeniu że 1 bajt to 8 bitów)
- Pamięć statyczna - jeden rejestr to jedna komórka pamięci. Żeby mieć 1k komórek pamięci potrzeba 1k rejestrów
- Pamięć dynamiczna - nie używa zatrzasków tylko zapamiętuje w pojemności tranzystora, przez co trzeba ja odświeżać, ale jest kilka razy tańsza
To tyle odnośnie pamięci pamięta. Co do ALU to z bramek logicznych można zbudować półsumator, z dwóch półsumoatorów - jeden sumator jednobitowy, z 8 sumatorów jednobitowych jeden sumator bajtowy. Mając sumator można budować na nim inne operacje jak odejmowanie itd. Ogólnie na Politechnice Śląskiej uczyli kiedyś czegoś takiego jak Maszyna W, czyli przykładowy prosty komputer który na wykładach był rozrysowywany na bramki.
Ogólnie wszystkie te tematy da się wygooglać, ale im bardziej będziesz się zbliżać do rzeczywistych, nowych komputerów tym mniej będzie informacji bo intel i podobni nie udostępniają schematów swoich procesorów z tego co wiem. Wyjątkiem jest ARM gdzie chyba każdy na licencji może zbudować sobie własny procesor oparty o schemat ARM
- Rejestracja: dni
- Ostatnio: dni
- Lokalizacja: Space: the final frontier
- Postów: 26433
Poprosiłbym o linka do książki/strony, która by to przedstawiła
Rozumiesz ze twoje pytanie to jest jakieś 2 lata studiów? ;)
Z jednej strony:
- Fizyka (półprzewodnictwo)
- Elektronika analogowa (diody, tranzystory)
- Elektronika cyfrowa (bramki, przerzutniki, rejestry, liczniki, sumatory)
- Mikroprocki (ALU, pamięć operacyjna, fetch-decode-execute)
- Architektury komputerów
Z drugiej strony:
- Automaty i Języki Formalne
- Kompilatory
- Asemblery
Obawiam się że nie ma jednej książki która to wszystko obejmuje ;) Zawsze możesz czytać sobie z http://wazniak.mimuw.edu.pl/index.php?title=Strona_g%C5%82%C3%B3wna
- Rejestracja: dni
- Ostatnio: dni
Możliwie najkrótsza lista tematów do ogarnięcia:
- Assembler (np. 8051, albo inny)
a) http://www.zstio-elektronika.pl/pliki_t_telekomunikacji/asembler_8051.pdf
b) - konstruowanie assemblera
a) (wymaga znajomości Pythona) https://hackaday.io/project/10576-mucpu-an-8-bit-mcu/log/36010-writing-an-assembler-in-python
b) https://stackoverflow.com/a/2479275 - architektura procesora - https://archiwum.allegro.pl/oferta/mikrokomputery-jednoukladowe-rodziny-mcs-51-i8837447576.html
- architektura systemu - kup sobie zestaw uruchomieniowy, do 8051 może być ciężko bo to staroć
- matematyka dyskretna
- podstawy elektroniki - np.
a) https://helion.pl/ksiazki/elektronika-od-praktyki-do-teorii-charles-platt,eleodp.htm#format/e
b) - konstruowanie systemów z bramek logicznych - np. https://helion.pl/ksiazki/elektronika-od-praktyki-do-teorii-kolejne-eksperymenty-charles-platt,eleodk.htm#format/e
- fizyka prądu stałego - http://fizyka.edu.pl/prad-staly/