Αναπαράσταση Δεδομένων (2 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

Σχετικά έγγραφα
Εισαγωγή στους Η/Υ. Γιώργος Δημητρίου. Μάθημα 7 και 8: Αναπαραστάσεις. Πανεπιστήμιο Θεσσαλίας - Τμήμα Πληροφορικής

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. 5 ο Μάθημα. Λεωνίδας Αλεξόπουλος Λέκτορας ΕΜΠ. url:

Δύο είναι οι κύριες αιτίες που μπορούμε να πάρουμε από τον υπολογιστή λανθασμένα αποτελέσματα εξαιτίας των σφαλμάτων στρογγυλοποίησης:

Τετάρτη 5-12/11/2014. ΣΗΜΕΙΩΣΕΙΣ 3 ου και 4 ου ΜΑΘΗΜΑΤΟΣ ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΑΡΧΙΤΕΚΤΟΝΙΚΗ Η/Υ Α ΕΞΑΜΗΝΟ

Εισαγωγή στην επιστήμη των υπολογιστών

Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας. Πληροφορική Ι. Αναπαράσταση αριθμών στο δυαδικό σύστημα. Δρ.

ΠΛΗΡΟΦΟΡΙΚΗ I Ενότητα 6

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Βασικές Έννοιες Προγραμματισμού. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 11/10/07

Πραγµατικοί αριθµοί κινητής υποδιαστολής Floating Point Numbers. Σ. Τσιτµηδέλης ΤΕΙ ΧΑΛΚΙΔΑΣ

Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού

ΗΜΥ 100 Εισαγωγή στην Τεχνολογία

Εισαγωγή στην Πληροφορική & τον Προγραμματισμό

Αναλογικά & Ψηφιακά Κυκλώματα ιαφάνειες Μαθήματος ρ. Μηχ. Μαραβελάκης Εμ.

Αναπαράσταση Μη Αριθμητικών Δεδομένων

! Δεδομένα: ανεξάρτητα από τύπο και προέλευση, στον υπολογιστή υπάρχουν σε μία μορφή: 0 και 1

Προγραμματισμός Υπολογιστών

ΗΜΥ 100 Εισαγωγή στην Τεχνολογία

Αναπαράσταση Δεδομένων. ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

Κεφάλαιο 2 Η έννοια και η παράσταση της πληροφορίας στον ΗΥ. Εφ. Πληροφορικής Κεφ. 2 Καραμαούνας Πολύκαρπος 1

Εισαγωγή στην Επιστήμη των Υπολογιστών

Εισαγωγή στον Προγραμματισμό

Εισαγωγή στους Υπολογιστές

Δύο είναι οι κύριες αιτίες που μπορούμε να πάρουμε από τον υπολογιστή λανθασμένα αποτελέσματα εξαιτίας των σφαλμάτων στρογγυλοποίησης:

Υπολογιστές και Πληροφορία 1

ΠΛΗΡΟΦΟΡΙΚΗ Ι Ενότητα 8: Συστήματα αρίθμησης

Τμήμα Λογιστικής. Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. Μαθήματα 6 και 7 Αναπαράσταση της Πληροφορίας στον Υπολογιστή. 1 Στέργιος Παλαμάς

Κεφάλαιο 2. Οργάνωση και διαχείριση της Πληροφορίας στον. Υπολογιστή

Πληροφορική. Ενότητα 4 η : Κωδικοποίηση & Παράσταση Δεδομένων. Ι. Ψαρομήλιγκος Τμήμα Λογιστικής & Χρηματοοικονομικής

Ψηφιακά Κυκλώματα Ι. Μάθημα 1: Δυαδικά συστήματα - Κώδικες. Λευτέρης Καπετανάκης

ΘΕΜΑ : ΣΥΣΤΗΜΑΤΑ ΑΡΙΘΜΗΣΗΣ. ΔΙΑΡΚΕΙΑ: 1 περιόδους. 22/1/ :11 Όνομα: Λεκάκης Κωνσταντίνος καθ. Τεχνολογίας

! Εάν ο αριθμός διαθέτει περισσότερα bits, χρησιμοποιούμε μεγαλύτερες δυνάμεις του 2. ! Προσοχή στη θέση του περισσότερο σημαντικού bit!

2. ΑΡΙΘΜΗΤΙΚΗ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ. 2.1 Αριθμητικά συστήματα

Πράξεις με δυαδικούς αριθμούς

Ένα αναλογικό σήμα περιέχει άπειρες πιθανές τιμές. Για παράδειγμα ένας απλός ήχος αν τον βλέπαμε σε ένα παλμογράφο θα έμοιαζε με το παρακάτω:

Τμήμα Οικιακής Οικονομίας και Οικολογίας. Αναπαράσταση Αριθμών

Analog vs Digital. Δούρβας Ιωάννης ΙΩΑΝΝΗΣ ΔΟΥΡΒΑΣ

Εισαγωγή στον Προγραμματισμό

Εισαγωγή στην πληροφορική

ΠΛΗ21 Κεφάλαιο 1. ΠΛΗ21 Ψηφιακά Συστήματα: Τόμος Α Κεφάλαιο: 1 Εισαγωγή

Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας. Πληροφορική Ι. Μάθημα 4 ο Πράξεις με bits. Δρ.

1 η Θεµατική Ενότητα : Δυαδικά Συστήµατα

Εισαγωγή στην Επιστήμη των Υπολογιστών

Αριθμητικά Συστήματα Η ανάγκη του ανθρώπου για μετρήσεις οδήγησε αρχικά στην επινόηση των αριθμών Κατόπιν, στην επινόηση συμβόλων για τη παράσταση

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική Ι. Ενότητα 3 : Αναπαράσταση αριθμών στο δυαδικό σύστημα. Δρ.

Β1.1 Αναπαράσταση Δεδομένων και Χωρητικότητα Μονάδων Αποθήκευσης

ΚΕΦΑΛΑΙΟ 1 Ψηφιακός Κόσμος

Αριθμητική Κινητής Υποδιαστολής Πρόσθεση Αριθμών Κινητής Υποδιαστολής

Πανεπιστήμιο Πατρών Τμήμα Φυσικής Εργαστήριο Ηλεκτρονικής. Ψηφιακά Ηλεκτρονικά. Αριθμητικά Συστήματα. Επιμέλεια Διαφανειών: Δ.

Εισαγωγή στην Πληροφορική ΓΕΝΙΚΟ ΤΜΗΜΑ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ TEI ΧΑΛΚΙ ΑΣ

Εισαγωγή στην επιστήμη των υπολογιστών. Υπολογιστές και Δεδομένα Κεφάλαιο 2ο Αναπαράσταση Δεδομένων

ΥΠΟΛΟΓΙΣΤΕΣ Ι. Τα επιμέρους τμήματα Η ΟΜΗ TOY ΥΠΟΛΟΓΙΣΤΗ. Αναπαράσταση μεγεθών. Αναλογική αναπαράσταση ΚΕΝΤΡΙΚΗ ΜΝΗΜΗ ΜΟΝΑ Α ΕΛΕΓΧΟΥ

Αριθμητική Ανάλυση & Εφαρμογές

ΗΜΥ 100 Εισαγωγή στην Τεχνολογία ιάλεξη 12

Αριθμητικές Μέθοδοι σε Προγραμματιστικό Περιβάλλον

Ψηφιακή Λογική Σχεδίαση

ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ ΚΑΙ ΚΩ ΙΚΕΣ

2. Κώδικες 2. ΚΩΔΙΚΕΣ

Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL

Κεφάλαιο 1. Συστήματα αρίθμησης και αναπαράστασης

Σύστημα Πλεονάσματος και Αναπαράσταση Αριθμών Κινητής Υποδιαστολής

Σύστημα Πλεονάσματος. Αναπαράσταση Πραγματικών Αριθμών. Αριθμητικές Πράξεις σε Αριθμούς Κινητής Υποδιαστολής

Ανασκόπηση στα ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. 6 ο Μάθημα. Λεωνίδας Αλεξόπουλος Λέκτορας ΕΜΠ. url:

ΠΛΗΡΟΦΟΡΙΑΚΑ & ΤΗΛΕΠΙΚΟΙΝΩΝΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

Υπολογιστές Ι. Άδειες Χρήσης. Εισαγωγή. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

Τεχνικές διόρθωσης και ανίχνευσης σφαλµάτων

Επανάληψη Βασικών Στοιχείων Ψηφιακής Λογικής

ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΑ ΣΥΣΤΗΜΑΤΑ. Δρ. Κουζαπάς Δημήτριος Πανεπιστήμιο Κύπρου - Τμήμα Πληροφορικής. Αναπαράσταση Δεδομένων

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

Chapter 3. Αριθμητική Υπολογιστών. Όγδοη (8 η ) δίωρη διάλεξη. Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L.

ΠΛΗ21 Κεφάλαιο 2. ΠΛΗ21 Ψηφιακά Συστήματα: Τόμος Α Κεφάλαιο: 2 Δυαδική Κωδικοποίηση

1.4 Αριθμητική υπολογιστών και σφάλματα

Τεχνολογία Πολυμέσων. Ενότητα # 8: Αρχές κωδικοποίησης Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

ΑΡΙΘΜΗΤΙΚΗ ΓΙΑ ΥΠΟΛΟΓΙΣΤΕΣ

Βασικοί τύποι δεδομένων (Pascal) ΕΠΑ.Λ Αλίμου Γ Πληροφορική Δομημένος Προγραμματισμός (Ε) Σχολ. Ετος Κων/νος Φλώρος

1. Το σύστημα κινητής υποδιαστολής 2. Αναπαράσταση πραγματικών δυαδικών αριθμών 3. Το πρότυπο 754 της ΙΕΕΕ

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) (PASCAL ) Μεταβλητές- Τύποι- Τελεστές

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

Αρχιτεκτονικές Υπολογιστών

Αρχιτεκτονική Μηχανής. Αποθήκευση εδοµένων

Αριθμητικά Συστήματα

Οργάνωση επεξεργαστή (1 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

Εισαγωγή στην επιστήµη των υπολογιστών ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ

Κεφάλαιο 2 ο Βασικές Έννοιες Αλγορίθμων (σελ )

Ψηφιακοί Υπολογιστές

Μέθοδοι Ελέγχου Σφαλμάτων

Εισαγωγή στην επιστήμη των υπολογιστών. ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ και Μετατροπές Αριθμών

ΘΕΜΑ : ΨΗΦΙΑΚΑ ΗΛΕΚΤΡΟΝΙΚΑ DIGITAL ELECTRONICS

Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών. ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ Νεκτάριος Κοζύρης ΑΡΙΘΜΗΤΙΚΕΣ ΠΡΑΞΕΙΣ

Χρήστος Ξενάκης. Πανεπιστήμιο Πειραιώς, Τμήμα Ψηφιακών Συστημάτων

ΕΠΙΚΟΙΝΩΝΙΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΕΣ INTERNET

Εισαγωγή στους Η/Υ. Ενότητα 8: Μετάδοση Δεδομένων. Δημήτρης Σαραβάνος, Καθηγητής Πολυτεχνική Σχολή Τμήμα Μηχανολόγων & Αεροναυπηγών Μηχανικών

Τμήμα Οικιακής Οικονομίας και Οικολογίας. Αναπαράσταση Αριθμών

ΗΜΥ 100 Εισαγωγή στην Τεχνολογία ιάλεξη 18

Γενική οργάνωση υπολογιστή «ΑΒΑΚΑ»

Transcript:

Αναπαράσταση Δεδομένων (2 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

«Λογικές» πράξεις, μάσκες Πώς βρίσκουμε το υπόλοιπο μιας διαίρεσης με το 4; διαίρεση με 4 = δεξιά ολίσθηση 2 bits Το υπόλοιπο είναι τα 2 bits που χάνονται κατά την ολίσθηση 0 1 1 0 modulo 4 = 0 0 1 0 Για να τα απομονώσουμε πρέπει να κρύψουμε (mask) (μηδενίσουμε) τα υπόλοιπα bits χρησιμοποιώντας τον δυαδικό τελεστή ΚΑΙ με μια κατάλληλη μάσκα AND 0 1 1 0 0 0 1 1 0 0 1 0 μάσκα Άλλες λογικές πράξεις: Η (OR) θέτει bit σε 1 Αποκλειστικό Ή (XOR) αντιστρέφει bit 2

16-δικοί αριθμοί Οι δυαδικοί αριθμοί χρειάζονται πολλά ψηφία για να χρησιμοποιούνται από ανθρώπους Αντί για δυαδικούς, συχνά χρησιμοποιούμε 16-δικούς (hexadecimal) γιατί μετατρέπονται μεταξύ τους εύκολα Ψηφία 16-δικών αριθμών 0 9 όπως στους δεκαδικούς, και επιπλέον τα γράμματα A F που συμβολίζουν το 10 15 Κάθε 4 bits αντιστοιχούν σε ένα 16-δικο ψηφίο 1 1 1 1 1 0 0 0 = 0xF8 F(15) 8 Οι 16-δικοί είναι μόνο για δική μας διευκόλυνση δεν χρησιμοποιούνται απ ευθείας από το υλικό 3

Πραγματικοί αριθμοί Αριθμοί σταθερής υποδιαστολής (fixed point) Θέση bit n-1 1 0-1 -m Δυαδικός αριθμός Δεκαδικός: *2 n-1 + *2 1 + *2 0 + *2-1 + *2 - m Χρησιμοποιούνται κυρίως σε μονάδες ψηφιακής επεξεργασίας σήματος (digital signal processor) Οι πράξεις είναι ακριβώς όπως με τους ακέραιους 4

Αριθμοί κινητής υποδιαστολής Με σταθερή υποδιαστολή, αν έχουμε 5 ψηφία συνολικά με 2 ψηφία για το δεκαδικό τμήμα, μπορούμε να αναπαραστήσουμε αριθμούς όπως 123.45, 12.34, 1.23 περιοριζόμαστε σε αριθμούς γύρω από το μηδέν Με τον ίδιο αριθμό ψηφίων μπορούμε να αναπαραστήσουμε περισσότερους αριθμούς αν χρησιμοποιήσουμε κινητή υποδιαστολή: 0.12345, 1234500000, 0.000012345 ο αριθμός των ψηφίων (η ακρίβεια - precision) μένει ίδιος, αλλά η θέση της υποδιαστολής κινείται 5

Αριθμοί κινητής υποδιαστολής 2 Μπορούμε να γράψουμε ένα δεκαδικό πραγματικό αριθμό x με τη μορφή (επιστημονικός συμβολισμός scientific notation): x = ±q 10 m έτσι ώστε το q να είναι κανονικοποιημένο q 1. q 2 q n με q 1 > 0, θέτωντας μια κατάλληλη τιμή στο m Παράδειγμα: 0.001234 = 1.234 * 10-3 Το ίδιο μπορεί να γίνει με δυαδικούς αριθμούς Το q 1 είναι πάντα 1, οπότε δεν χρειάζεται να αναπαρασταθεί Κερδίζουμε ένα επιπλέον bit για ακρίβεια 6

Το πρότυπο IEEE 754 Καθορίζει αναπαράσταση αριθμών κινητής υποδιαστολής διαφόρων μεγεθών. 32 bit single-precision float: 31 30 23 22 0 sign (s) exponent (exp) mantissa or significand (sig) (-1) s x (1.sig) x 2 exp-127 (0.75) 10 (0.11) 2 (1.1x2-1 ) 2 0 01111110 10000000000000000000000 Οι επεξεργαστές έχουν εξειδικευμένο υλικό για πράξεις με αριθμούς κινητής υποδιαστολής 7

Αναπαραστάσιμοι αριθμοί Με πεπερασμένο αριθμό ψηφίων (mantissa) μόνο (κάποιοι) ρητοί αριθμοί μπορούν να παρασταθούν! Π.χ. σε δεκαδικό σύστημα ½=0.5, αλλά 1/3=0.333... άρητοι αριθμοί όπως ο π και ο 2, έχει δεκαδικά ψηφία που δεν τελειώνουν ποτέ! Στο δυαδικό σύστημα μόνο αριθμοί με παρονομαστή δύναμη του 2 έχουν πεπερασμένο αριθμό ψηφίων μετά την υποδιαστολή Για παράδειγμα το 0.1 (10) σε δυαδική αναπαράσταση γίνεται 0.00011001100... το 1100 επαναλαμβάνεται συνέχεια 8

Πραγματικοί αριθμοί σε ΗΥ Αριθμοί που δεν παριστάνονται, στρογγυλοποιούνται στον κοντινότερο αριθμό που μπορεί να παρασταθεί Οι αριθμοί κινητής υποδιαστολής θέλουν προσοχή! μικρά «λαθάκια» ακρίβειας συσωρεύονται η σειρά πράξεων (π.χ. αντιμετάθεση) μπορεί να δώσει (λίγο) διαφορετικές τιμές Θα δείτε πως αντιμετωπίζονται τέτοια προβλήματα στο μάθημα αριθμητικής ανάλυσης οι αριθμοί κινητής υποδιαστολής χρησιμοποιούνται ευρύτατα 9

Άλλοι αριθμοί: μιγαδικοί,... Γενικά συνθέτονται από ακέραιους ή πραγματικούς Π.χ. οι μιγαδικοί είναι απλά ένα ζευγάρι πραγματικών σε ΗΥ απλά δύο αριθμοί κινητής υποδιαστολής Οι πράξεις τους ορίζονται χρησιμοποιώντας πράξεις απλούστερων τύπων αριθμών Γλώσσες προγραμματισμού υψηλού επιπέδου ορίζουν τέτοιους τύπους (ή, συχνότερα το κάνει ο προγραμματιστής) και κατάλληλες αριθμητικές πράξεις αλλά υλοποιούνται με λογισμικό, όχι απευθείας από το υλικό 10

Αναπαράσταση χαρακτήρων Οι χαρακτήρες (γράμματα, σημεία στίξης, ψηφία αριθμών) πρέπει να κωδικοποιηθούν στο δυαδικό σύστημα Οι «πράξεις» με γράμματα έχουν λιγότερες απαιτήσεις από αυτές με αριθμούς αλφαβητική σειρά (το α πρέπει να είναι αμέσως πριν το β ) Παρόμοια για ψηφία: ο κωδικός του 1 αμέσως πριν αυτόν του 2,... εύκολη μετατροπή κεφαλαίων σε μικρά και αντίστροφα 11

Κωδικοποίηση ASCII Ενας χαρακτήρας αποθηκεύεται σε 7 bits Πιο συνηθισμένο είναι το extended ASCII που χρησιμοποιεί 8 bits (byte) Αν μπορείτε να θυμάστε 3 κωδικοποιήσεις, μπορείτε να βρείτε το κωδικό οποιουδήποτε χαρακτήρα 0 0x30 (48), A 0x41 (65), a 0x61 (97) Πως μετατρέπεται ο αριθμός 4 στο χαρακτήρα 4 ; Χρησιμοποιείται επίσης ως συνώνυμο του «σκέτου κειμένου», δηλαδή χωρίς μορφοποίηση (γραμματοσειρές κτλ) 12

Unicode Αν θέλουμε να χρησιμοποιήσουμε χαρακτήρες από πολλές γλώσσες, ο κώδικας ASCII δεν αρκεί Οι κωδικοποιήσεις Unicode λύνουν αυτό το πρόβλημα UTF-8, UCS-2, UTF-16, UTF-32 Πιο συχνά χρησιμοποιείται το UTF-8 Μεταβλητό μήκος κωδικού ανά χαρακτήρα: 1-4 bytes Οι πρώτοι 128 χαρακτήρες ASCII είναι ίδιοι και στο UTF-8 Χρησιμοποιείται στις περισσότερες ιστοσελίδες και είναι η πιο κοινή κωδικοποίηση σε προγράμματα email. Απευθείας υποστήριξη σε μοντέρνες γλώσσες προγραμματισμού 13

Γραμματοσειρές Αφορούν την εμφάνιση των χαρακτήρων όχι τα δεδομένα μικρές ζωγραφιές γραμμάτων/συμβόλων Για παράδειγμα το Ελληνικό Α και το λατινικό Α φαίνονται ίδια αλλά έχουν διαφορετικούς κωδικούς Μερικές φορές σε εφαρμογές η εμφάνιση αλλάζει ριζικά όταν αλλάζει κανείς τη γραμματοσειρά θέμα μετατροπής της αναπαράστασης ASCII ή UNICODE στην αντίστοιχη «ζωγραφιά» 14

Λέξεις, προτάσεις,... Έιναι απλά σειρές από χαρακτήρες - συμβολοσειρές Αγγλικός όρος: string Αποθηκεύονται συνεχόμενα στη μνήμη ο πρώτος χαρακτήρας στη διεύθυνση α ο επόμενος στη διεύθυνση α+1,... Πώς ξέρουμε που τελειώνει η σειρά; Υπάρχουν 2 τρόποι ειδικός χαρακτήρας (κωδικός 0) σημαίνει τέλος σειράς χαρακτήρων (Γλώσσα προγρ.c ) το μήκος της σειράς αποθηκεύεται μαζί με τους χαρακτήρες (Γλώσσα προγρ. Java) 15

Πολύπλοκα δεδομένα Πιο πολύπλοκα δεδομένα: συνδυασμός/ομάδες από αριθμούς (ακέραιους, πραγματικούς, χαρακτήρες) Σύνολα: απλή αντιστοίχιση στοιχείων σε αριθμούς π.χ. σχήματα: τετράγωνο 1, τρίγωνο 2,... Οι γλώσσες προγραμματισμού δίνουν τη δυνατότητα ορισμού τύπων δεδομένων που συνδιάζουν απλούς/βασικούς τύπους «πακετάρισμα» σε μία μεταβλητή πίνακας δεδομένων για πολλαπλά στοιχεία του ίδιου τύπου 16

Προστασία σφαλμάτων Σφάλματα μπορούν να συμβούν κατά τη μετάδοση ή όσο τα δεδομένα είναι αποθηκευμένα, εμφανίζονται ως αλλαγμένα bits Πώς μπορούμε να προστατεύσουμε τα δεδομένα από σφάλματα; Η λύση βρίσκεται στην ιδέα του πλεονασμού πληροφορίας (information redundancy): αν αρκούν x bit για κάποιο τύπο δεδομένου, χρησιμοποιούμε κάποια επιπλέον p bits ελέγχου οι τιμές των p bits προέρχονται από τα x bit δεδομένων με κάποιο αλγόριθμο για έλεγχο ορθότητας, (ξανα)υπολογίζουμε τις τιμές των p bit ελέγχου, αν δεν είναι ίδιες με αυτές που έχουμε, υπάρχει σφάλμα 17

Έλεγχος ισοτιμίας (parity) Ενα επιπλέον bit προστίθεται στο τέλος της σειράς των bit που θέλουμε να προστατεύσουμε Περιττή ισοτιμία (odd parity): η τιμή του bit ισοτιμίας είναι τέτοια ώστε ο συνολικός αριθμός των 1 σε όλη τη σειρά (συμπ. το bit ισοτιμίας) είναι περιττός Αντίστοιχα για άρτια ισοτιμία (even parity) συνολικός αριθμός των 1 είναι άρτιος Παράδειγμα. Δεδομένα: 001011. Υπάρχουν 3 1, ήδη περιττός αριθμός, Άρα το bit ισοτιμίας θα είναι 0 Τελική αναπαράσταση 0010110 18

Ανίχνευση λάθους με ισοτιμία Αν ένα bit αλλάξει τιμή, ο αριθμός των 1 από περιττός θα γίνει άρτιος ή το αντίθετο Μετρώντας τον αριθμό των 1, θα δούμε ότι υπάρχει λάθος Παράδειγμα Αρχικά δεδομένα 0010110 Διαβάζουμε 1010110, υπάρχουν 4 bit με τιμή 1, ενώ περιμένουμε περιττό αριθμό Το λάθος ανιχνεύτηκε 19

Ανίχνευση λαθών Με ισοτιμία ανιχνεύουμε λάθη σε 1,3,... bit Υπάρχουν πιο περίπλοκες κωδικοποιήσεις για ανίχνευση περισσότερων λαθών χρειάζονται περισσότερα bit ελέγχου ίσως να έχετε ακούσει για CRC, md5, Μπορούμε να μειώσουμε την πιθανότητα αδυναμίας ανίχνευσης λάθους όσο θέλουμε, «πληρώνοντας» περισσότερα bit ελέγχου Αξιόπιστο σύστημα: δεν κάνει λάθη εκτός και αν είναι λάθη των προγραμματιστών... Ανίχνευση λάθους προκαλεί επανεκτέλεση (ή επανάληψη μετάδοσης για δίκτυα) 20

Διόρθωση λαθών Υπάρχουν κώδικες που μπορούν να διορθώσουν έναν αριθμό λαθών και να ανιχνεύσουν ακόμα περισσότερα λάθη Βασική ιδέα: οι δυαδικοί κωδικοί κάθε ζεύγους συμβόλων διαφέρουν τουλάχιστον κατά x bit αν τα (x-1)/2 bit αλλάξουν από λάθος η κοντινότερη κωδικοποίηση θα αντιστοιχεί μόνο στο σωστό σύμβολο 21

Ψηφιακά και αναλογικά δεδομένα Ψηφιακό (digital) διακριτά δεδομένα μπορούν να πάρουν οποιαδήποτε τιμή από ένα πεπερασμένο σύνολο τιμών π.χ. αριθμοί κινητής υποδιαστολής Αναλογικό (analog) παράσταση δεδομένων με συνεχή τρόπο άπειρο σύνολο τιμών π.χ. πραγματικοί αριθμοί Στο περιβάλλον οι αισθήσεις μας δίνουν αναλογικά δεδομένα π.χ. όραση (συνεχείς διαβαθμίσεις χρωμάτων), ακοή 22

Ψηφιοποίηση Οι υπολογιστές χειρίζονται ψηφιακά δεδομένα Πώς μπορεί ένας υπολογιστής να χειριστεί ήχους, εικόνες, και άλλα αναλογικά δεδομένα; Χρειάζεται ψηφιοποίηση (digitization) των αναλογικών «σημάτων» σε ψηφιακά για επεξεργασία από ΗΥ Η ψηφιοποίηση περιλαμβάνει 3 βήματα Δειγματοληψία (sampling) Κβαντισμό (quantization) Κωδικοποίηση 23

Πλεονεκτήματα ψ. αναπαράστασης Δυνατότητες επεξεργασίας εύκολη επεξεργασία από λογισμικό π.χ. κρυπτογράφηση, αλλαγή γλώσας ομιλίας σε video,... Αξιόπιστη μετάδοση Οι δύο καταστάσεις λιγότερο επιρρεπής σε αλλοιώσεις Κωδικοποιήσεις ανίχνευσης/διόρθωσης λαθών Εύκολη αποθήκευση σε οποιοδήποτε μέσο: δίσκος, μνήμη flash, μικρό μέγεθος, μικρή κατανάλωση ρεύματος Εύκολη παραγωγή πιστών αντιγράφων απλά αντιγράφονται αριθμοί 24

Δειγματοληψία, κβαντισμός Δειγματοληψία λαμβάνονται τιμές του αναλογικού σήματος (δείγματα) σε ισοκατανεμημένα στο χρόνο διαστήματα Ο αριθμός των δειγμάτων στη μονάδα χρόνου πρέπει να είναι κατάλληλος Αν το σήμα αλλάζει γρήγορα χρειάζονται πολλά δείγματα ανά δευτερόλεπτο Κβαντισμός αντιστοίχιση της τιμής του αναλογικού σήματος στον κοντινότερο αριθμό που μπορεί να παρασταθεί ψηφιακά σφάλματα κβαντισμού 25

26