reprezentacja danych w pamiĘci komputera a. znaki alfabetu c. dźwięki
DESCRIPTION
REPREZENTACJA DANYCH W PAMIĘCI KOMPUTERA A. znaki alfabetu C. dźwięki B. liczby D. obrazy · pamięć komputera ciąg bajtów · numer bajtu adres · bajt 8 bitów ( cyfr binarnych 0 , 1 ) - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: REPREZENTACJA DANYCH W PAMIĘCI KOMPUTERA A. znaki alfabetu C. dźwięki](https://reader034.vdocuments.net/reader034/viewer/2022051821/568150f8550346895dbf1866/html5/thumbnails/1.jpg)
REPREZENTACJA DANYCH
W PAMIĘCI KOMPUTERA
A. znaki alfabetu C. dźwięki
B. liczby D. obrazy
pamięć komputera ciąg bajtów
numer bajtu adres
bajt 8 bitów ( cyfr binarnych 0 , 1 )
zapis w postaci binarnej ( ciągi binarne, zerojedynkowe )
![Page 2: REPREZENTACJA DANYCH W PAMIĘCI KOMPUTERA A. znaki alfabetu C. dźwięki](https://reader034.vdocuments.net/reader034/viewer/2022051821/568150f8550346895dbf1866/html5/thumbnails/2.jpg)
A. Znaki alfabetu
za pomocą liczb binarnych najczęściej 8-bitowych
1 bajt = 8 bitów 0 255
kod ASCII – 8-bitowy
000 127 standard
128 255 znaki narodowe, specjalne
przestarzały, brak NL, strzałek itp.
![Page 3: REPREZENTACJA DANYCH W PAMIĘCI KOMPUTERA A. znaki alfabetu C. dźwięki](https://reader034.vdocuments.net/reader034/viewer/2022051821/568150f8550346895dbf1866/html5/thumbnails/3.jpg)
Kod ASCII
Znak Kod Znak Kod Znak Kod Znak Kod Znak Kod Znak Kod Znak Kod Znak Kod
NUL 00 DLE 16 SP 32 0 48 @ 64 P 80 ‘ 96 p 112
SOH 01 DC1 17 ! 33 1 49 A 65 Q 81 a 97 q 113
STX 02 DC2 18 „ 34 2 50 B 66 R 82 b 98 r 114
ETX 03 DC3 19 # 35 3 51 C 67 S 83 c 99 s 115
EOT 04 DC4 20 $ 36 4 52 D 68 T 84 d 100 t 116
ENQ 05 NAK 21 % 37 5 53 E 69 U 85 e 101 u 117
ACK 06 SYN 22 & 38 6 54 F 70 V 86 f 102 v 118
BEL 07 ETB 23 ` 39 7 55 G 71 W 87 g 103 w 119
BS 08 CAN 24 ( 40 8 56 H 72 X 88 h 104 x 120
HT 09 EM 25 ) 41 9 57 I 73 Y 89 i 105 y 121
LF 10 SUB 26 * 42 : 58 J 74 Z 90 j 106 z 122
VT 11 ESC 27 + 43 ; 59 K 75 [ 91 k 107 { 123
FF 12 FS 28 , 44 < 60 L 76 \ 92 l 108 | 124
CR 13 GS 29 45 = 61 M 77 ] 93 m 109 } 125
SO 14 RS 30 . 46 > 62 N 78 ^ 94 n 110 ~ 126
SI 15 US 31 / 47 ? 63 O 79 _ 95 o 111 DEL 127
![Page 4: REPREZENTACJA DANYCH W PAMIĘCI KOMPUTERA A. znaki alfabetu C. dźwięki](https://reader034.vdocuments.net/reader034/viewer/2022051821/568150f8550346895dbf1866/html5/thumbnails/4.jpg)
UNICODE : UTF-8, UTF-16, UTF-32 (www.unicode.org)
UTF-8Bits Byte 1 Byte 2 Byte 3 Byte 4 Byte 5 Byte 6
7 0xxxxxxx
11 110xxxxx 10xxxxxx
16 1110xxxx 10xxxxxx 10xxxxxx
21 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx
26 111110xx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx
31 1111110x 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx
![Page 5: REPREZENTACJA DANYCH W PAMIĘCI KOMPUTERA A. znaki alfabetu C. dźwięki](https://reader034.vdocuments.net/reader034/viewer/2022051821/568150f8550346895dbf1866/html5/thumbnails/5.jpg)
B. Liczby
pozycyjny, wagowy zapis liczb
Lp = a0p0 + a1p
1 + a2p2 + ... // Lp >= 0
p = 10 cyfry 0, 1, ... , 9
L10 = 1a0 + 10a1 + 100a2 + 1000a3 ... //..a3a2a1a0
liczby binarne
p = 2 cyfry 0, 1
L2 = 1a0 + 2a1 + 4a2 + 8a3 + 16a4 + 32a5 +
64a6 + 128a7 + 256a8 + 512a9 + 1024a10 + ...
// ...a3a2a1a0
![Page 6: REPREZENTACJA DANYCH W PAMIĘCI KOMPUTERA A. znaki alfabetu C. dźwięki](https://reader034.vdocuments.net/reader034/viewer/2022051821/568150f8550346895dbf1866/html5/thumbnails/6.jpg)
Liczby całkowite bez znaku
ciągi binarne n-elementowe 0 (2n – 1)
8 b – 1 B – 0 255
16 b – 2 B – 0 65 535
32 b – 4 B – 0 4 294 967 295
64 b – 8 B – 0 18 446 744 073 709 551 615
![Page 7: REPREZENTACJA DANYCH W PAMIĘCI KOMPUTERA A. znaki alfabetu C. dźwięki](https://reader034.vdocuments.net/reader034/viewer/2022051821/568150f8550346895dbf1866/html5/thumbnails/7.jpg)
przeliczanie
BIN DEC : ze wzoru na wartość liczby
Lp = a0p0 + a1p
1 + a2p2 + ...
p = 2
L2 = 1a0 + 2a1 + 4a2 + 8a3 + 16a4 + 32a5 + 64a6 +
128a7 + 256a8 + 512a9 + 1024a10 + ...
np.
1011002 = 1*0 + 2*0 + 4*1 + 8*1 + 16*0 + 32*1 = 4410
im mniejsza podstawa tym mniej różnych cyfr ale więcej pozycji w liczbie o takiej samej wartości
![Page 8: REPREZENTACJA DANYCH W PAMIĘCI KOMPUTERA A. znaki alfabetu C. dźwięki](https://reader034.vdocuments.net/reader034/viewer/2022051821/568150f8550346895dbf1866/html5/thumbnails/8.jpg)
DEC BIN : dzielenie przez 2
44 0
22 0 4410 = 1011002
11 1
5 1
2 0
1 1
0
![Page 9: REPREZENTACJA DANYCH W PAMIĘCI KOMPUTERA A. znaki alfabetu C. dźwięki](https://reader034.vdocuments.net/reader034/viewer/2022051821/568150f8550346895dbf1866/html5/thumbnails/9.jpg)
łatwiej przeliczać gdy p = 2m
m = 3 system ósemkowy, oktalny, cyfry 0 7
OCT BIN0 000
1 001
2 010
3 011
4 100
5 101
6 110
7 111
1 011 101 001 010 001 1102 = 13512168
54038 = 101 100 000 0112
![Page 10: REPREZENTACJA DANYCH W PAMIĘCI KOMPUTERA A. znaki alfabetu C. dźwięki](https://reader034.vdocuments.net/reader034/viewer/2022051821/568150f8550346895dbf1866/html5/thumbnails/10.jpg)
m = 4 system, heksadecymalny (hex), szesnastkowy
cyfry 0 9, A, B, C, D, E, F
HEX BIN DEC 8 1000 8
9 1001 9
A 1010 10
B 1011 11
C 1100 12
D 1101 13
E 1110 14
F 1111 15
1001 1110 0000 11112 = 9E0F16
AB7DE16 = 1010 1011 0111 1101 11102
![Page 11: REPREZENTACJA DANYCH W PAMIĘCI KOMPUTERA A. znaki alfabetu C. dźwięki](https://reader034.vdocuments.net/reader034/viewer/2022051821/568150f8550346895dbf1866/html5/thumbnails/11.jpg)
Liczba całkowita bez znaku w rejestrze
lub w komórce pamięci
7 6 5 4 3 2 1 0
27 ........................... 20
1 bajt
![Page 12: REPREZENTACJA DANYCH W PAMIĘCI KOMPUTERA A. znaki alfabetu C. dźwięki](https://reader034.vdocuments.net/reader034/viewer/2022051821/568150f8550346895dbf1866/html5/thumbnails/12.jpg)
Arytmetyka liczb binarnych całkowitych bez znaku
dodawanie i odejmowanie jak dla dziesiętnych
001110 14 101000 40
+ 011010 + 26 – 011010 – 26
0 101000 40 0 001110 14
przeniesienie pożyczka
( nadmiar lub bit ( niedomiar lub bit
dodawany do odejmowany od
starszej części starszej części
liczby ) liczby )
![Page 13: REPREZENTACJA DANYCH W PAMIĘCI KOMPUTERA A. znaki alfabetu C. dźwięki](https://reader034.vdocuments.net/reader034/viewer/2022051821/568150f8550346895dbf1866/html5/thumbnails/13.jpg)
Liczby całkowite ze znakiem
znak – moduł
7 6 .................. 0
znak moduł 000...0 + 0
0 1
+ –
– 127 + 127
100...0 – 0
![Page 14: REPREZENTACJA DANYCH W PAMIĘCI KOMPUTERA A. znaki alfabetu C. dźwięki](https://reader034.vdocuments.net/reader034/viewer/2022051821/568150f8550346895dbf1866/html5/thumbnails/14.jpg)
znak – moduł rzadko stosowany bo trudne + –
a + b a.Z | a.M + b.Z | b.M
1. a.Z = = b.Z a.Z | ( a.M + b.M )
2. a.M > b.M
a.Z | ( a.M – b.M ) b.Z | ( b.M – a.M )
T
N
![Page 15: REPREZENTACJA DANYCH W PAMIĘCI KOMPUTERA A. znaki alfabetu C. dźwięki](https://reader034.vdocuments.net/reader034/viewer/2022051821/568150f8550346895dbf1866/html5/thumbnails/15.jpg)
uzupełnienie do 2 (Uzp2)
0000 0001 . . . 0111 1000 . . . 1111 10000
liczby + liczby –
![Page 16: REPREZENTACJA DANYCH W PAMIĘCI KOMPUTERA A. znaki alfabetu C. dźwięki](https://reader034.vdocuments.net/reader034/viewer/2022051821/568150f8550346895dbf1866/html5/thumbnails/16.jpg)
0 0 0 1 + 1 1 0 0 1 – 7
0 0 1 0 + 2 1 0 1 0 – 6
0 0 1 1 + 3 1 0 1 1 – 5
0 1 0 0 + 4 1 1 0 0 – 4
0 1 0 1 + 5 1 1 0 1 – 3
0 1 1 0 + 6 1 1 1 0 – 2
0 1 1 1 + 7 1 1 1 1 – 1
0 0 0 0 0 1 0 0 0 – 8
![Page 17: REPREZENTACJA DANYCH W PAMIĘCI KOMPUTERA A. znaki alfabetu C. dźwięki](https://reader034.vdocuments.net/reader034/viewer/2022051821/568150f8550346895dbf1866/html5/thumbnails/17.jpg)
liczba 4–bitowa Uzp2 – 8 + 7
obliczanie liczby przeciwnej dla Uzp2
0101 + 5
~ 1010
+ 1
1011 – 5
1011 – 5
~ 0100
+ 1
0101 + 5
![Page 18: REPREZENTACJA DANYCH W PAMIĘCI KOMPUTERA A. znaki alfabetu C. dźwięki](https://reader034.vdocuments.net/reader034/viewer/2022051821/568150f8550346895dbf1866/html5/thumbnails/18.jpg)
dodawanie i odejmowanie niezależne od znaków
wynik poprawny, gdy nie ma nadmiaru
0111 7
+ 1011 + (– 5 )
1 0010 2
przeniesienie ( pomijamy )
zamiast odejmowania, dodawanie liczby przeciwnej
4 – 6 = 4 + (– 6 )
0100 4
+ 1010 + (– 6 )
0 1110 – 2
![Page 19: REPREZENTACJA DANYCH W PAMIĘCI KOMPUTERA A. znaki alfabetu C. dźwięki](https://reader034.vdocuments.net/reader034/viewer/2022051821/568150f8550346895dbf1866/html5/thumbnails/19.jpg)
wykrywanie nadmiaru
dla znak – moduł
nadmiar, gdy przeniesienie na bit znaku = 1
0 110 6
+ 0 011 + 3
1 001 9 // -1
![Page 20: REPREZENTACJA DANYCH W PAMIĘCI KOMPUTERA A. znaki alfabetu C. dźwięki](https://reader034.vdocuments.net/reader034/viewer/2022051821/568150f8550346895dbf1866/html5/thumbnails/20.jpg)
dla Uzp2
0110 6 1010 –6 0110 6 1010 –6 +0100 4 +1100 –4 +1100 –4 +0100 +4
0 1010 1 0110 1 0010 0 1110
OV OV OK OK
Cz = 0 Cz = 1 Cz = 1 Cz = 0
Cs = 1 Cs = 0 Cs = 1 Cs = 0
Cz + Cs = 1 nadmiar
(Cz różne od Cs)
![Page 21: REPREZENTACJA DANYCH W PAMIĘCI KOMPUTERA A. znaki alfabetu C. dźwięki](https://reader034.vdocuments.net/reader034/viewer/2022051821/568150f8550346895dbf1866/html5/thumbnails/21.jpg)
Liczby niecałkowite
zapis stałopozycyjny
. . . . . .
liczba całkowita ułamek
. . . a2p2 + a1p
1 + a0p0 + a-1p
-1 + a-2p-2 . . .
konwersja binarno – dziesiętna
101.01 = 1*22 + 0*21 + 1*20 + 0*2-1 * 1*2-2 =
4 + 0 + 1 + 0 + ¼ = 5¼ = 5.25
![Page 22: REPREZENTACJA DANYCH W PAMIĘCI KOMPUTERA A. znaki alfabetu C. dźwięki](https://reader034.vdocuments.net/reader034/viewer/2022051821/568150f8550346895dbf1866/html5/thumbnails/22.jpg)
konwersja dziesiętno – binarna
0 43 * 2
0 86
1 72
1 44
0 88 0.43 = 0.0110111 ...
1 76
1 52
1 04
0 08
.
.
![Page 23: REPREZENTACJA DANYCH W PAMIĘCI KOMPUTERA A. znaki alfabetu C. dźwięki](https://reader034.vdocuments.net/reader034/viewer/2022051821/568150f8550346895dbf1866/html5/thumbnails/23.jpg)
liczba całkowita ułamek
16b 16b
4 cyfry . 4 cyfry dziesiętne dziesiętne
dodawanie i odejmowanie jak dla liczb całkowitych bez znaku (znaki ew. jako odrębne bity)
mnożenie i dzielenie algorytmy iteracyjne prostsze niż dla liczb zmiennopozycyjnych
![Page 24: REPREZENTACJA DANYCH W PAMIĘCI KOMPUTERA A. znaki alfabetu C. dźwięki](https://reader034.vdocuments.net/reader034/viewer/2022051821/568150f8550346895dbf1866/html5/thumbnails/24.jpg)
zapis zmiennopozycyjny
m * pc
p = 10
1.57*1012 1.57E12
normalizacja
125.78E5
12.578E6 0.12578E8
12578E3
![Page 25: REPREZENTACJA DANYCH W PAMIĘCI KOMPUTERA A. znaki alfabetu C. dźwięki](https://reader034.vdocuments.net/reader034/viewer/2022051821/568150f8550346895dbf1866/html5/thumbnails/25.jpg)
p = 2 , standard IEEE 754
s c m 63 62 52 51 0
znak liczby 10...01 2
0 + 10...10 3
1 – 10...11 4
01...00 – 3
cecha 01...01 – 2
przesunięta 01...10 – 1
01...11 0
10...00 1
![Page 26: REPREZENTACJA DANYCH W PAMIĘCI KOMPUTERA A. znaki alfabetu C. dźwięki](https://reader034.vdocuments.net/reader034/viewer/2022051821/568150f8550346895dbf1866/html5/thumbnails/26.jpg)
mantysa znormalizowana (m) ma zawsze postać
1.xxxxxxxx....xxxxx ( 1.0...0 1.1..1 ) początkowa jedynka nie jest pamiętana
1.010 ≤ m < 2.010
przykłady
010 0 00000000000 00..00
1.010 0 01111111111 00...00
–1.010 1 01111111111 00...00
1010 0 10000000010 0100..00
–1010 1 10000000010 0100..00
15.5 0 10000000010 111100..00
–15.5 1 10000000010 111100..00
![Page 27: REPREZENTACJA DANYCH W PAMIĘCI KOMPUTERA A. znaki alfabetu C. dźwięki](https://reader034.vdocuments.net/reader034/viewer/2022051821/568150f8550346895dbf1866/html5/thumbnails/27.jpg)
reprezentowane wartości
1 | 1..1 | 1..1 1 | 0..01 | 0..0 0 | 0..0 | 0..0 0 | 0..01 | 0..0 0 | 1..1 | 1..1
ujemne zero dodatnie
0 20 21 22 23
2n 2n 2n
n liczba cyfr mantysy
![Page 28: REPREZENTACJA DANYCH W PAMIĘCI KOMPUTERA A. znaki alfabetu C. dźwięki](https://reader034.vdocuments.net/reader034/viewer/2022051821/568150f8550346895dbf1866/html5/thumbnails/28.jpg)
dla n = 52 odległość pomiędzy reprezentowanymi liczbami wynosi:
c = 0 2.22044604925e-16
c = 1 4.440892098501e-16
c = 52 1
c = 150 3.169126500571e+29
typy liczb zmiennopozycyjnych
single : 32b 1 / 8 / 23 3.4 E 38 7 cyfr
double : 64b 1 / 11 / 52 1.7 E 308 15 cyfr
![Page 29: REPREZENTACJA DANYCH W PAMIĘCI KOMPUTERA A. znaki alfabetu C. dźwięki](https://reader034.vdocuments.net/reader034/viewer/2022051821/568150f8550346895dbf1866/html5/thumbnails/29.jpg)
Arytmetyka zmiennopozycyjna
mnożenie mnożenie mantys, sumowanie cech, normalizacja
dzielenie dzielenie mantys, odejmowanie cech, normalizacja
dodawanie wyrównanie cech, dodawanie, normalizacja
odejmowanie wyrównanie cech, odejmowanie, normalizacja
![Page 30: REPREZENTACJA DANYCH W PAMIĘCI KOMPUTERA A. znaki alfabetu C. dźwięki](https://reader034.vdocuments.net/reader034/viewer/2022051821/568150f8550346895dbf1866/html5/thumbnails/30.jpg)
dla 3 cyfr dokładnych
0.375 * 105 + 0.25 * 10-2 =
0.375 * 105 + 0.000000025 * 105 =
0.375000025 * 105 0.375 * 105
sposób sumowania trzech liczb zmiennopozycyjnych aby błąd był najmniejszy
obliczenia zmiennopozycyjne na odpowiedzialność programisty