Data Κείμενο Βίντεο Αριθμοί Εικόνες Ήχοι 1
Τα δεδομένα στους ηλεκτρονικούς υπολογιστές αναπαρίστανται σαν αριθμοί Οι αριθμοί αποθηκεύονται σε bits (δυαδικό σύστημα). Θέματα: Πως αναπαριστώνται οι αρνητικοί αριθμοί? Ποιος είναι ο μεγαλύτερος αριθμός που μπορεί να αναπαρασταθεί με μια λέξη του υπολογιστή? Τι γίνεται με τα κλάσματα και τους πραγματικούς αριθμούς? Σύστημα Βάση Σύμβολα Δυαδικό 2 0,1 Τριαδικό 3 0,1,2 Οκταδικό 8 0,1,2,3,4,5,6,7 Δεκαδικό 10 0,1,2,3,4,5,6,7,8,9 Δωδεκαδικό 12 0,1,2,3,4,5,6,7,8,9,Α,Β δεκαεξαδικό 16 0,1,2,3,4,5,6,7,8,9,Α,Β,C,D,E,F 2
HEX DEC OCT BIN 0 0 0 0000 1 1 1 0001 2 2 2 0010 3 3 3 0011 4 4 4 0100 5 5 5 0101 6 6 6 0110 7 7 7 0111 8 8 10 1000 9 9 11 1001 A 10 12 1010 B 11 13 1011 C 12 14 1100 D 13 15 1101 E 14 16 1110 F 15 17 1111 10110010 1 1 0 0 1 0 2 7 2 6 2 5 2 4 2 3 2 2 2 1 2 0 128 64 32 16 8 4 2 1 1 0 1 1 0 0 1 0 1 0 1 1 0 0 1 0 => 128+32+16+2=178 3
10110010 1 1 0 0 1 0 1011 0010 11<dec> 2<dec> B2 Διαίρεσε τον δεκαδικό 71 2 αριθμό n με το 2. 1 35 2 Το υπόλοιπο της 1 17 2 διαίρεσης είναι το 1 επόμενο bit του 8 2 αριθμού. 0 4 2 Συνέχισε με n το πηλίκο 0 2 2 Παράδειγμα: Διάβασε τα 0 1 2 υπόλοιπα από τα Το 71 είναι το 1000111 στο δεξιά (κάτω) προς τα 1 0 δυαδικό σύστημα αριστερά. (πάνω) 4
Ακέραιοι Μη Προσημασμένοι Προσημασμένοι Μέτρο και Συμπλήρωμα Συμπλήρωμα πρόσημο ως προς 1 ως προς 2 Ένας μη προσημασμένος ακέραιος μπορεί να πάρει τιμές 0 - + Δεν υπάρχει υπολογιστής που να μπορεί να αναπαραστήσει όλους τους ακέραιους Ο μέγιστος μη προσημασμένος ακέραιος εξαρτάται από τον αριθμό των μπιτ Ν που χρησιμοποιεί ο υπολογιστής για την αναπαράσταση ενός μη προσημασμένου ακέραιου Διάστημα τιμών: 0 (2 N 1) 5
Αριθμός 4Bit 8Bit 2 0010 00000010 18 overflow 00010010 256 overflow overflow Αριθμοί χωρίς πρόσημο (Unsigned) Αναπαράσταση από 0 έως 2 32-1 00000000 00000000 00000000 00000000= 0 00000000 00000000 00000000 00000001= 1 00000000 00000000 00000000 00000010= 2 11111111 11111111 11111111 11111101= 4,294,967,293 967 293 11111111 11111111 11111111 11111110= 4,294,967,294 11111111 11111111 11111111 11111111= 4,294,967,295 6
Ένας προσημασμένος ακέραιος μπορεί να πάρει τιμές - <=> + Δεν υπάρχει υπολογιστής που να μπορεί να αναπαραστήσει όλους τους ακέραιους Ο μέγιστος και ελάχιστος προσημασμένος ακέραιος εξαρτάται από τον αριθμό των μπιτ Ν που χρησιμοποιεί ο υπολογιστής για την αναπαράσταση ενός προσημασμένου ακέραιου Διάστημα τιμών: -2 Ν 0...(2 N 1) Το MSB εκφράζει το πρόσημο Τα υπόλοιπα Bit εκφράζουν το μέτρο Πχ: 16 => 010000-16 => 110000 Κλίμακα: -2 Ν-1... 0... 2 Ν-1 7
Αν το MSB είναι 0 ο αριθμός είναι θετικός Το μέτρο του εκφράζεται από τα υπόλοιπα bit Αν το MSB είναι 1 ο αριθμός είναι αρνητικός To μέτρο του εκφράζεται με το σημπλήρωμα ως προς 1 των υπόλοιπων bit Το συμπλήρωμα ως προς 1 προκύπτει αλλάζοντας τα 0 σε 1 και αντίστροφα Κλίμακα: -2 Ν-1 1... 0... 2 Ν-11 Παράδειγμα: +5 = 00000101-5 = 11111010 ( 1111010 => 0000101) Αν το MSB είναι 0 ο αριθμός είναι θετικός Το μέτρο του εκφράζεται από τα υπόλοιπα bit Αν το MSB είναι 1 ο αριθμός είναι αρνητικός To μέτρο του εκφράζεται με το συμπλήρωμα ως προς 2 των υπόλοιπων bit Το συμπλήρωμα ως προς 2 προκύπτει απο το συμπλήρωμα ως προς 1 προσθέτοντας 1 και αγνοώντας το κρατούμενο αν υπάρξει. Κλίμακα: -2 Ν-1 1... 0... 2 Ν-1 1-1 Παράδειγμα: +5 = 00000101-5 = 11111010+1 = 11111011 8
+5 + ( 5) = 0 00000101 11111011 100000000 Απρόσημη Αριθμητική Αν έχουμε nbitsη περιοχή των αριθμών είναι : 0 έως (2 n 1) πχ Για n=8 8 0 εως 255 Για n=16 0 εως 65535 Για n=32 0 εως (2 32-1) Προσημασμένη Αριθμητική Αν έχουμε nbitsη περιοχή των αριθμών είναι : -2 n-1 έως 2 n-1-1 πχ. Για n=8-128 εως +127 Για n=16 6-32768 εως +32767 Για n=32-2 31 εως +2 31-1 9
Προσημασμένος αριθμός 1111 1111 1111 1111 1111 1111 1111 1100 Απάντηση (1x 2 31 )+ (1x2 30 )+ (1x2 29 )+ + (1x 22 )+ (0x 21 )+ (0x 20 ) = -2 31 + 2 30 + 2 29 + + 2 2 + 0 + 0 = -2,147,483,648,, + 2,147,483,644=,, -4 Mή προσημασμένος αριθμός 1111 1111 1111 1111 1111 1111 1111 1100 Απάντηση (1x 2 31 )+ (1x2 30 )+ (1x2 29 )+ + (1x2 2 )+ (0x2 1 )+ (0x2 0 ) = +2,147,483,648 + 2,147,483,644= 4294967296 10
Σταθερής υποδιαστολής Qa.b d n-1 2 a-1 +d n-2 2 a-2 + +d n-a 2 0+ d n-a-1 2-1+ + d 0 2 -b 2.625 = 10101 = 1 2 + 0 1 + 1 0.5 + 0 0.25 + 1 0.125 (Q2.3) Κινητής υποδιαστολής sx2 e 1bit 8bit 23bit ± e S Οι πράξεις χρησιμοποιούν προσημασμένη αριθμητική Υπάρχουν εντολές για μη προσημασμένη αριθμητική $0= 00000000 00000000 00000000 00000000 $1= 11111111 11111111 11111111 11111111 slt $2,$1,$0 $2=1 sltu $2,$1,$0 $2=0 11
Το αποτέλεσμα μιας πράξης μπορεί να δημιουργήσει υπερχείλιση Υπάρχουν εντολές που αγνοούν την υπερχείλιση addu, addiu, subu Logical Operations C Operators MIPS Instructions Shift Left << sll Shift Right >> srl AND & and, andi OR or, ori 12
Ολίσθηση (shift left-right logical sll $1, $2, x srl $1, $2, x #$1=$2<<x #$1=$2>>x Προσοχή οι sll και srl είναι Rtype sll $1,$2,8 0 0 2 1 8 0 000000 00000 00010 01000 01000 000000 OR, AND or $1, $2, $3 #$1=$2 $3 and $1, $2, $3 #$1=$2&$3 13
14
a b a b Cin Cin 0 0 0 0 0 1 Sum 0 1 0 0 1 1 1 0 0 1 0 1 Cout 1 1 0 1 1 1 Sum Cout 0 0 1 0 1 0 0 1 1 0 0 1 0 1 1 1 Cin Opperation a b Result Cout 15
Opperation a0 b0 Cin Cout Result0 a1 a1 b1 Cin Cout Result1 a31 b31 Cin Cout Result31 16
17