Prowadzący
Opis
Dla informatyków-teoretyków komputer jest Maszyną Turinga, albo nawet dużą funkcją przekształcającą jeden stan pamięci w drugi [ citation needed ]. Dla programistów czarną skrzynką, która wykonuje napisane przez nich programy. A czym jest komputer dla elektronika? Plątaniną układów scalonych, elementów dyskretnych i ścieżek. Właśnie takiemu podejściu będziemy się starali przyjrzeć na warsztatach.
Zobaczymy jak wygląda dioda, tranzystor i układ scalony, dowiemy się jak zrobić bramkę logiczną, jak przechowywać bity informacji w układzie, co w środku mają procesory i jak czytać kod asemblera.
Program zajęć
- prąd stały
- podstawowe elementy półprzewodnikowe - diody, tranzystory
- bramki logiczne
- większe układy - kombinacyjne, sekwencyjne, przerzutniki, rejestry
- architektura komputera
- wykonanie programu napisanego w C, jego związek z asemblerem
Proste bramki logiczne i mniejsze układy zbudujemy sobie sami na płytce stykowej. Przy okazji paląc diody i wybuchając kondensatory. Płytki oraz potrzebne elementy będą zapewnione. Działanie większych układów będziemy symulować na tablicy i w wyobraźni. Do analizowania wykonania programu przydadzą się laptopy.
Wymagania
- znajomość zagadnień związanych z prądem stałym na poziomie liceum
- znajomość języka C ze szczególnym uwzględnieniem wskaźników
- dostęp do laptopa z Linuksem
- odporność na wysokie napięcie
Zadania kwalifikacyjne
Warsztaty mają charakter interdyscyplinarny. Mam nadzieję, że informatycy poradzą sobie z fizyką, a fizycy nie przerażą informatyką.
Rozwiązania proszę przesyłać mi na maila. Dobrze by było zrobić wszystkie, w każdym razie należy wszystkie rozgrzebać.
1. półprzewodniki
Wytłumacz dlaczego dioda przewodzi prąd tylko w jedną stronę.
2. wzmacniacz operacyjny
Wzmacniacz operacyjny to układ elektroniczny, którego schemat wygląda następująco.

Napięcie wyjściowe idealnego wzmacniacza operacyjnego dane jest wzorem $U_{WY} = \beta ( U_{WE+} - U_{WE-} )$, gdzie $\beta$ jest bardzo duże (naprawdę bardzo). Napięcia mierzymy względem masy (napięcia 0). Do wejść nie wpływają żadne prądy, a z wyjścia może wypływać dowolnie duży. Udowodnij, że poniższy układ elektroniczny daje na wyjściu napięcie $U_{WY} = - (U_1 + U_2)$.

Symbol odwróconego "T" oznacza właśnie masę. Wszystkie oporniki mają jednakową rezystancję.
3. niskopoziomowe C(++)
Dana jest funkcja
void f() {
int x=0;
g();
printf("%d\n", x);
}
Zaimplementuj funkcję g(), która podmieni wartość zmiennej x. Kod powinien działać na kompilatorze gcc pod Linuksem. Do rozwiązania dołącz informację ilubitowy masz procesor.
Hint: zbadaj położenie zmiennej x w pamięci.
Dodatkowe informacje
Nieobciążona jaskółka rozwija prędkość do 300 km/h.