IT1101 Informatikk basisfag enkeltime 1/9 Først litt mer om ...
IT1101 Informatikk basisfag enkeltime 1/9 Først litt mer om ...
IT1101 Informatikk basisfag enkeltime 1/9 Først litt mer om ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>IT1101</strong> <strong>Informatikk</strong><br />
<strong>basisfag</strong> <strong>enkeltime</strong> 1/9<br />
Sist torsdag: Hvordan representere<br />
informasjon binært (bitstrenger/vha 0’er og<br />
1’er)<br />
Heltall<br />
Flyttall<br />
Tekst<br />
I dag: Hvordan manipulere bits<br />
Porter og elektroniske kretser<br />
Boolsk algebra<br />
Logikkdiagram<br />
Sannhetstabeller<br />
Definisjon av binær<br />
10101011110100010101001010<br />
10010100110100100101010010<br />
10100101010101001010101010<br />
01010101010010010101010111<br />
1100...<br />
Idag: kap 1.1 i<br />
Brookshear<br />
binær a1 (gj fr fra lat. binarius) todelt,<br />
s<strong>om</strong> består av to enheter; s<strong>om</strong> beror på<br />
valget mell<strong>om</strong> to muligheter<br />
Viktig: Samme bitstreng kan representere<br />
forskjellig informasjon. Eks 01011010<br />
Tegn i ASCII: Z<br />
Toers k<strong>om</strong>plement notasjon: 90<br />
Flyttallsnotasjon: 1 ¼ = 1.25<br />
Byggeklossene i<br />
maskinen: porter (gates)<br />
En port er en fysisk innretning s<strong>om</strong> tar ett eller<br />
flere elektriske signal inn og produserer et<br />
elektrisk signal ut<br />
En AND-port:<br />
INN<br />
INN<br />
En OR-port:<br />
INN<br />
INN<br />
UT<br />
UT<br />
<strong>Først</strong> <strong>litt</strong> <strong>mer</strong> <strong>om</strong><br />
bitstrenger<br />
Hvor mange forskjellige bitstrenger kan vi<br />
ha vha 2 bit?<br />
00, 01, 10, 11 = 4 = 2*2 = 2 2<br />
Hvor mange vha 3 bit?<br />
000, 001, 010, 011, 100, 101, 110, 111 = 8 =<br />
2*2*2 = 2 3<br />
Vha x bit kan vi representere 2 x<br />
unike/forskjellige ”ting”<br />
Manipulere/forandre bits<br />
5 volt<br />
0 volt<br />
Bitstrengene bør kunne<br />
Forandres/manipuleres<br />
Og gjøres beregninger på (feks legge<br />
sammen to heltall og få et svar (en ny<br />
bitstreng)<br />
1<br />
0<br />
Bits lagres s<strong>om</strong><br />
elektriske signaler.<br />
Høy spenning = 1 og<br />
lav spenning = 0.<br />
Ved å sette sammen porter<br />
kan vi lagre elektroniske<br />
kretser<br />
Feks kan vi lage en elektronisk krets s<strong>om</strong><br />
kan utføre addisjon<br />
A<br />
B<br />
Sum<br />
Mente<br />
Ufullstendig...
Manipulering med 0/1signaler<br />
kan beregnes/vises<br />
på 3 forskjellige måter<br />
Boolsk algebra: En matematisk<br />
notasjon for å uttrykke logiske funksjoner<br />
(der variablene kan være sanne eller<br />
usanne)<br />
Kretsdiagram: En grafisk representasjon<br />
av en krets: hver type port har sitt symbol<br />
Sannhetstabell: En tabell s<strong>om</strong> viser alle<br />
mulige inputverdier og de assosierte<br />
utgangsverdier<br />
Ulike porter og deres<br />
symboler<br />
AND (og)<br />
OR (eller)<br />
XOR (enten<br />
eller, ikke<br />
begge)<br />
NOT (ikke)<br />
Forklaring<br />
INN<br />
INN<br />
La oss sette en midlertidig 1’er på<br />
den øverste inngangen (mens den<br />
nederste er 0)<br />
Dette vil gi en 1’er ut fra OR-porten<br />
Begge inngangene til AND-porten<br />
er nå 1 og vi får 1 ut fra ANDporten<br />
Den andre inputen til OR-porten er<br />
nå 1, og dette garanterer at<br />
utgangen fra OR-porten fortsatt vil<br />
være 1 selv når den øverste<br />
inngangen blir 0 igjen (den var bare<br />
midlertidig 1)<br />
INN<br />
INN<br />
INN<br />
INN<br />
UT<br />
INN UT<br />
Ideel for lagring.<br />
Den ”vipper”<br />
mell<strong>om</strong> 0 og 1. Vi<br />
sender et<br />
midlertidig signal<br />
inn og så<br />
”husker” kretsen<br />
verdien<br />
10<br />
0<br />
1<br />
1<br />
1<br />
1<br />
UT<br />
UT<br />
Eksempel<br />
Boolsk algebra: C = A AND B<br />
En boolsk operasjon:<br />
Tar binære input,<br />
produserer<br />
sannhetsverdi<br />
Kretsdiagram:<br />
Sannhetstabell:<br />
Boolsk algebra: George<br />
Boole (1815-1864)<br />
Flip-flop: en krets for<br />
0<br />
lagring<br />
En flip-flop er en krets<br />
s<strong>om</strong> produserer 0 eller<br />
1 på utgangen inntil en<br />
midlertidig puls på èn<br />
av inngangene får den<br />
til å skifte verdi på<br />
utgangen<br />
Så lenge inngangene<br />
begge er 0 vil<br />
utgangen forbli det<br />
samme<br />
Vi har en krets s<strong>om</strong><br />
”holder på” en verdi<br />
A<br />
0<br />
0<br />
1<br />
1<br />
A<br />
B<br />
0<br />
B<br />
0<br />
1<br />
0<br />
1<br />
En midlertidig 1’er på<br />
den øverste inngangen<br />
vil gi en permanent 1’er<br />
på utgangen<br />
En midlertidig 0’er på<br />
den nedereste<br />
inngangen vil gi en<br />
permanent 0’er på<br />
utgangen<br />
Abstraksjon – hva/hvordan<br />
Dette er et eksempel<br />
at detaljer kan (og<br />
bør) abstraheres bort<br />
En person s<strong>om</strong><br />
konstruerer kretser<br />
kan nå forholde seg<br />
til en krets s<strong>om</strong> han<br />
kan vippe mell<strong>om</strong> 0<br />
og 1 uten å vite<br />
hvordan den er laget<br />
Han trenger bare vite<br />
hva den gjør<br />
x 1<br />
x 2<br />
* / *<br />
C<br />
0<br />
0<br />
0<br />
1<br />
u 1<br />
C<br />
01
Oppgave: hvilke inputk<strong>om</strong>binasjoner<br />
gir 1 på<br />
utgangen C?<br />
Alternativt kan vi<br />
sette opp<br />
sannhetstabell slik:<br />
A<br />
0<br />
0<br />
1<br />
1<br />
B<br />
0<br />
1<br />
0<br />
1<br />
A XOR B<br />
0<br />
1<br />
1<br />
0<br />
NOT B<br />
1<br />
0<br />
1<br />
0<br />
A<br />
B<br />
C = (A XOR B) AND (NOT B)<br />
Oppgave: når er følgende<br />
boolske uttrykk sant?<br />
(A XOR B) AND C<br />
Problemstilling: ”Når er det slik at en av A<br />
og B er sann samtidig s<strong>om</strong> C er sann?”<br />
0<br />
0<br />
1<br />
0<br />
C<br />
Krets for addisjon,<br />
prinsipp<br />
Mente<br />
A<br />
B<br />
A<br />
+ B<br />
Sum<br />
Mente<br />
Oppsum<strong>mer</strong>ing<br />
Sum<br />
Må ”kjede” flere<br />
slike kretser for å<br />
legge sammen<br />
bitstrenger av<br />
feks 8-bits lengde.<br />
Se appendix B<br />
Torsdag: kap<br />
1.2-1.4 og 1.8-<br />
1.9 i Brookshear<br />
Porter – byggeklossene i en datamaskin<br />
Signal(er) inn og produserer signal ut<br />
Boolsk algebra<br />
Funksjoner av variable s<strong>om</strong> er sanne eller usanne<br />
Sannhetstabeller<br />
Setter opp alle mulige k<strong>om</strong>binasjoner av input og finner de<br />
mulige output<br />
Flip-flop (vippe)<br />
En krets s<strong>om</strong> ”husker”<br />
Addisjonskrets<br />
Prinsipp