Post on 04-Jul-2015
Συστήματα Αρίθμησης� Δυαδικό
� Δεκαδικό
� Δεκαεξαδικό
Το δυαδικό Σύστημα (BINary)
Περιέχει μόνο τα ψηφία: 0 και 1
πχ. 10011101 1000111 10101010 κλπ.
Εάν x, y, z είναι δυαδικά ψηφία (δηλαδή 0 ή 1), τότε ο αριθμός xyz υπολογίζεται ως εξής:
xyz = x*22 + y*21 + z*20 101 = 1*22 + 0*21 + 1*20
Δυαδικό Δεκαδική
τιμή
ΠΡΑΞΕΙΣ
101
111
1100
+
5
7
12
111
101
10
-
7
5
2
111
101
100011
�
7
5
35
100011
101
111
÷
35
5
7
ΠΡΟΣΘΕΣΗ ΑΦΑΙΡΕΣΗ ΠΟΛ/ΣΜΟΣ ΔΙΑΙΡΕΣΗ
Το δεκαδικό Σύστημα (DECimal)
Είναι το σύστημα που χρησιμοποιούμε καθημερινά.
Περιέχει τα ψηφία:
0 1 2 3 4 5 6 7 8 9
Εάν x, y, z είναι δεκαδικά ψηφία, τότε ο αριθμός xyz υπολογίζεται ως εξής:
xyz = x*102 + y*101 + z*100
Το δεκαεξαδικό Σύστημα (HEXadecimal)
Περιέχει τα ψηφία:
0 1 2 3 4 5 6 7 8 9 A B C D E F
Εάν x, y, z είναι δεκαεξαδικά ψηφία, τότε ο αριθμός xyz υπολογίζεται ως εξής:
xyz = x*162 + y*161 + z*160 (Δεκαδική τιμή)
Αριθμοί …
7 7 111
69 45 1000101
114 72 1110010
1453 5AD 10110101101
1821 71D 11100011101
1940 794 11110010100
2000 7D0 11111010000
DEC HEX BIN
Μετατροπή DEC σε BIN
� Δεδομένου του δεκαδικού X βρείτε την αναπαράστασή του στο δυαδικό σύστημα.
� Εάν 2n = X, τότε ο δυαδικός είναι 10…0 (n μηδενικά)
� Βρίσκουμε τον μικρότερο n τέτοιον ώστε 2n>X
Ο αριθμός είναι n-ψήφιος. Αφαιρούμε:Υ= X-2n-1
� Επαναλαμβάνεται η διαδικασία για τον Y
� Αθροίζουμε τους επιμέρους αριθμούς
ΠαράδειγμαΔεκαδικός Χ= 135
1 2 4 8 16 32 64 128 256 512 1024 ...
20 21 22 23 24 25 26 27 28 29 210
28 = 256 >125 Οπότε έχουμε 8-ψήφιο αριθμό: 10000000 Αφαιρούμε: 135-128 = 7
23 = 8 > 7 Οπότε έχουμε 3-ψήφιο αριθμό: 100 Αφαιρούμε: 7-4 = 3, 22 = 4>3 Οπότε 2-ψήφιο :
10Αφαιρούμε: 3-2 = 1, Οπότε έχουμε ένα ψηφίο: 1
Σύνολο: 10000111
PROGRAM BINDECDIMENSION IA(20)DATA IA/20*0/READ(*,*) XIF(X.GT.1000000.) STOP
J=030 CONTINUE
DO N=0,20 T = 2**N IF (T.GT.X) THEN IA(20+1-N)=1 X= X-2**(N-1)
IF(J.EQ.0) J=20+1-N IF(X.EQ.0) GO TO 15 GO TO 30 ENDIFENDDO
15 CONTINUEWRITE(*,'(1X,20I1)')(IA(I),I=J,20)END
ΠΡΟΓΡΑΜΜΑ ΠΡΟΓΡΑΜΜΑ FORTRANFORTRAN ΓΙΑ ΓΙΑ ΜΕΤΑΤΡΟΠΗ ΔEKΑΔΙΚΟΥ ΣΕ ΜΕΤΑΤΡΟΠΗ ΔEKΑΔΙΚΟΥ ΣΕ
ΔYΑΔΙΚΟΔYΑΔΙΚΟ
ΔΥΑΔΙΚΗ ΛΟΓΙΚΗ ΔΥΑΔΙΚΗ ΛΟΓΙΚΗ Αντιστοιχία: • FALSE 0• TRUE 1
A B [A OR B] [A AND B] [A XOR B]
0 0 0 0 0
0 1 1 0 1
1 0 1 0 1
1 1 1 1 0
A+B-A*B A*B A+B-2*A*B
Μετατροπή DEC σε HEX� Δεδομένου του δεκαδικού X, βρείτε την
αναπαράστασή του στο δεκαεξαδικό.
� Εάν 16n = X, τότε ο δυαδικός είναι 10…0 (n μηδενικά)
� Βρίσκουμε τον μικρότερο n τέτοιον ώστε 16n>X
� Ο αριθμός είναι n-ψήφιος με πρώτο ψηφίο: [X/16n-1]
� Αφαιρούμε:Υ= X-16n-1 [X/16n-1]
� Επαναλαμβάνεται η διαδικασία για τον Y
� Αθροίζουμε τους επιμέρους αριθμούς
1 16 256 4096
160 161 162 163
16 < 135 < 256
Πρώτο από τα δύο ψηφία: [135/16] = 8
Υπόλοιπο: 135-8*16 = 135-128 = 7
135 (dec) = 87 (hex)
8*16+7 =135
Μετατροπή του 135