Wprowadzenie do informatyki – ć wiczenia Podstawowe dział
Podstawowe dzia ania na
na liczbach
liczbach binarnych dr inż . Izabela Szczęch WSNHiD 2010/2011
Ćwiczenia z wprowadzenia do informatyki Plan zaję ć
n
Dodawanie
w
n
Odejmow
Odejmo anie
w
n
Mnoż enie
n
Dz
D ielenie
z
2
Izabela Szczęch
1
Wprowadzenie do informatyki – ć wiczenia Dodawanie
liczb binarnych
Dodawanie liczb binarnych
§ Do wykony
wy
w
kony ania
w
ania dodawania
w
potrz
potr ebna
z
jest z
jest najomo
z
ś ć
ć
wynik
wy
ó w sumow
sumo ania
w
ws
w zy
s
stkich
zy
kombinacji cy
kombinacji c f
y r:
0(2) + 0(2) = 0(2) 0(2) + 1(2) = 1(2) 1(2) + 0(2) = 1(2) 1(2) + 1(2) = 10(2) Wyja
y ś nienie:
1+1 w
1+1
w sy
s ste
y
m
ste ie
ie dwó
dw jk
j owym
y
daje
daje w
w wyni
wy k
ni u
u 0
0 na pew
na pe nej
w
nej pozy
poz cji,
y
a
jednoś
jedno ć
ć jest pr
z
jest pr enos
z
z
enos o
z na
na na
na następn
ę ą
pn pozy
poz cj
y ę
ę w
w licz
lic bie.
z
Jest
Jest to podoba
to podoba sy
s tuacja
y
tuacja jak
ja w
w przy
prz p
y a
p dk
d u
u dodaw
doda ania
w
ania 1
1 + 9 w
+ 9
w sy
s ste
y
m
ste ie
dz
d iesi
z
ę
iesi t
ę n
t ym
y
- otrz
otr y
z m
y ujem
uje y
y w
w wy
w n
y ik
i u
u 0, a jednoś
0, a jedno ć
ć jest
jest pr
zenoszona
z
enoszona na
następn
ę ą
pn pozy
poz cj
y ę.
ę
4
Izabela Szczęch
2
Wprowadzenie do informatyki – ć wiczenia Dodawanie liczb binarnych 0(2) + 0(2) = 0(2) 0(2) + 1(2) = 1(2) 1(2) + 0(2) = 1(2) 1(2) + 1(2) = 10(2) 0101 = 5
1100 =12
1
1010 = 10
1111 = 15
111
(10)
(10)
(10)
(10)
+ 01
0 10 = 6
1
+ 001
00 1 = 3
1
+ 1010 = 10
+ 0001 = 1
(10)
(10)
(10)
(10)
101
10 1 =
1
11
1 =
1111 =15
111
10100 = 20
10000 = 16
(10)
(10)
(10)
(10)
5
Dodawanie liczb binarnych Zadania:
Wykonaj
y
konaj poni
ż sz
s e
z
e dodawanie:
w
§ 1111001
111
+ 10010
= ???
(2)
(2)
(2)
§ 01111111
11111
+ 1
= ???
(2)
(2)
(2)
Dla spraw
Dla spra d
w z
d enia
z
poprawno
w
ś ci oblicze
ci oblic
ń skł
sk adniki i wy
adniki i
niki
wy
prz
pr ekon
z
w
ekon ertuj na
w
z
ertuj na apis
z
apis w
w sy
s stemie d
y
z
stemie d iesi
z
ętny
tn m.
y
6
Izabela Szczęch
3
Wprowadzenie do informatyki – ć wiczenia Dodawanie liczb binarnych - nadmiar
§ W pami
ęci komputera lic
z
lic b
z y
y binarne prz
binarne pr echo
z
wyw
echo
ane
wyw
s
ane ą w
postaci
postaci ustalonej
ustalonej ilo
ś ci
ci bitó w (np. 8, 16, 32 bit w
y
(np. 8, 16, 32 bit ).
y
§ Jeś li, zak
z
ł
ak adają c np. 8
c np. -mio bitowy f
wy ormat,
ormat, wy
nik
wy
sumow
sumo ania
w
dwó
dw ch licz
ch lic b
z 8 bitowy
bito
ch
wy
jest wi
jest
ększy
ks
niż 8 bitó
8 bit w,
w
to najstarszy
najstars
zy bit (dz
bit (d ie
z wią ty
t )
y
) zostanie utracon
z
y.
ostanie utracon
§ Sy
S tuacja taka na
y
zyw
tuacja taka na
a
zyw się nadmiarem (ang. ov o er
v f
er low)
) i
wyst
wy ę
st puje z
puje a
z w
a s
w z
s e,
z
e, gdy wynik
wy
operacji arytmet
y
yc
y znej
z
jest
wię
wi kszy
ks
zy niż gó
g rny
y zakres danego
z
f
akres danego ormatu
ormatu lic
z
lic b
z
b binarny
binarn ch
y
(np.
np. dla 8 bit
ó w
w wy
nik
wy
nik większy
ks
zy od 28 - 1, czy
1, c
li
zy
li wię
wi kszy
ks
zy od 255):
11111111(2) + 00000001(2) = 1|00000000(2) (255(10)+1(10)=0(10)) 7
Odejmowanie
liczb binarnych
Izabela Szczęch
4
Wprowadzenie do informatyki – ć wiczenia Odejmowanie liczb
Odejmowanie liczb binarnych Przy
Pr
odejmow
odejmo aniu kor
w
zy
aniu kor
stam
zy
y
y z
z tablicz
tablic ki
z
ki odejmow
odejmo ania:
w
0 - 0 = 0
1 - 0 = 1
1 - 1 = 0
0 - 1 = 1 i poż
i po yczka
y
z następnej pozy
pnej poz cji
y
Poż
Po yc
y zk
z a oz
o nac
z
z
nac a
z k
a oniecz
oniec no
z
ś
no ć odj
ć
ę
odj cia
ę
1
od wy
od
ni
wy k
ni u
u odejmow
odejmo ania c
w
y
ania c f
y r w
r
w nastę
nast pnej
ę
k
pnej olumnie.
110
1
11
10
10
11
- 1111
= 1011111
= 10
(1
( 10
1
- 15
= 95
).
(2)
(2)
(2)
(10)
(10)
(10)
1
11
11111
110
1
11
10
10
11
110
1
1110
11
110
1
11
10
10
11
-
1111
-
1111
- 0001111
000
1
11
1011111
9
Odejmowanie liczb
Odejmowanie liczb binarnych Zadania:
Wykonaj
y
konaj poni
ż sz
s e
z
e odejmowanie:
w
•10000000 - 0000001 = ???
(2)
(2)
(2)
•10101010 - 01010101 = ???
(2)
(2)
(2)
Dla spraw
Dla spra d
w z
d enia
z
enia popraw
popra no
w
ś ci oblicze
ci oblic
ń skł
sk adniki i wy
adniki i
niki
wy
prz
pr ekon
z
w
ekon ertuj na
w
z
ertuj na apis
z
apis w
w sy
s stemie d
y
ziesi
z
ętny
tn m.
y
10
Izabela Szczęch
5
Wprowadzenie do informatyki – ć wiczenia Odejmowanie lb binarnych- niedomiar
§ Przy operacjach na liczbach naturalnych, jeś li od liczby mniejszej odejmiemy większą , to wynik będzie ujemny, a zatem niemoż liwy do reprezentacji jako liczba naturalna.
11111111
00000000
- 00000001
11111111
§ Otrzymujemy same jedynki, a poż yczka nigdy nie zanika.
§ Sytuacja taka nazywa się niedomiarem (ang. underflow) i występuje zawsze, gdy wynik operacji arytmetycznej jest mniejszy od dolnego zakresu formatu liczb binarnych (dla naturalnego kodu dwó jkowego wynik mniejszy od 0).
11
Mnoż
Mno enie
ż
liczb binarnych
Izabela Szczęch
6
Wprowadzenie do informatyki – ć wiczenia Mnoż
Mno enie liczb binarnych ż
§ Mnoż enie jest wy
enie jest
kon
wy
yw
kon
ane
yw
analogicz
analogic nie
z
nie jak mnoż enie w
sy
s stemie d
y
ziesi
z
ętnym
1
1
1
1
0
1
0
0
1
x
1
0
1
x
1
1
1
1
1
1
0
1
0
0
1
0
0
0
0
0
+
1
0
0
1
+
1
1
1
1
0
1
1
0
1
1
1
0
0
1
0
1
1
0
13
Mnoż
Mno enie liczb binarnych ż
Zadania:
Wykonaj
y
konaj poni
ż sz
s e
z
e mnoż enia:
•100100
x 111
= ???
(2)
(2)
(2)
•101010
x 110
= ???
(2)
(2)
(2)
Dla sprawd
w zenia
z
enia poprawno
w
ś ci oblicze
ci oblic
ń cyz
c
nniki
yz
i wy
i
niki
wy
prz
pr ekon
z
w
ekon ertuj na
w
z
ertuj na apis
z
apis w
w sy
s stemie d
y
ziesi
z
ętny
tn m.
y
14
Izabela Szczęch
7
Wprowadzenie do informatyki – ć wiczenia Dzielenie
liczb binarnych
Dzielenie liczb binarnych
§ Dz
D ielenie
z
ielenie jest wy
jest
kon
wy
ywane
yw
analogicz
analogic nie
z
nie jak dz
jak d ielenie w
z
sy
s stemie d
y
z
stemie d iesi
z
ętnym
tn
0
0
1
1
0
0 0 0 1 1 1
1
0
0
1
0
:
1
1
1 0 0 0 1 1 :
1 0 1
-
1
1
-
1 0 1
0
1
1
0 1 1 1
-
1
1
- 1 0 1
0
0
0
0 1 0 1
- 1 0 1
0 0 0
16
Izabela Szczęch
8
Wprowadzenie do informatyki – ć wiczenia Dzielenie liczb binarnych Zadania:
Wykonaj
y
konaj poni
ż sz
s e
z
e dzielenia:
z
•11100
/ 111
= ???
(2)
(2)
(2)
•110110
/ 110
= ???
(2)
(2)
(2)
Dla sprawd
w zenia
z
enia poprawno
w
ś ci oblicze
ci oblic
ń operandy
operand i
y wy
i
niki
wy
prz
pr ekon
z
w
ekon ertuj na
w
z
ertuj na apis
z
apis w
w sy
s stemie d
y
z
stemie d iesi
z
ętny
tn m.
y
17
Mnoż
Mno enie
ż
enie i dzielenie
liczb binarnych
liczb binarnych przez 2
§ W systemie dwó jkowym operacja mnoż enia przez 2
odpowiada przesunięciu wszystkich cyfr o jedną pozycję w lewo (tak jak w systemie dziesiętnym mnoż enie przez 10).
45
x 10
=450
(10)
(10)
(10)
10011
x 2
=100110
(2)
(10)
(2)
10011
x 4
=1001100
(2)
(10)
(2)
§ Z kolei dzielenie przez 2 jest ró wnoważ ne przesunięciu wszystkich bitó w zapisu liczby o jedną pozycję w prawo.
1010
/ 2
=101
(2)
(10)
(2)
10011
/ 4
=100,11
(2)
(10)
(2)
§ W procesorze operacje mnoż enia i dzielenia przez 2
realizują układy zwane rejestrami przesuwnymi (ang. shift registers).
18
Izabela Szczęch
9