Δυαδικοί αρνητικοί αριθμοί

iJohnnyCash

e-steki.gr Founder

Ο Panayotis Yannakas αυτή τη στιγμή δεν είναι συνδεδεμένος. Είναι 36 ετών, επαγγέλλεται Επιχειρηματίας και μας γράφει από Αθήνα (Αττική). Έχει γράψει 24.247 μηνύματα.
Ετυχε να πεσει ενα βιβλιο στα χερια μου που μιλουσε για τα αριθμητικα συστηματα. Δυστυχως το βιβλιο ειναι στα αγγλικα και μιας τα αγγλικα μου δεν ειναι καθολου καλα, εχω πολλες αποριες.

Αυτο που δεν καταλαβα είναι:
Λεει οτι μπορουμε να αναπαραστισουμε ενα αριθμο αρνητικο με την βοηθεια του συμπληρώματος του 1 (*). Απο οσο καταλαβα το θετικο 28 ειναι το 11100 και το αρνητικο 28 ειναι το 11100011.

Ομως το 11100011 ειναι το 227 :worry:

Πως θα τους ξεχωριζουμε;

(*) χρησιμοποιω το συμπληρωμα του 1 και οχι του 2 , ασχετως αν ειναι ειναι "καλλιτερο" για να μην μπερδευτω περισσοτερο

Σημείωση: Το μήνυμα αυτό γράφτηκε 20 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.

 
Αρχική Δημοσίευση από Exposed_Bone:
Ετυχε να πεσει ενα βιβλιο στα χερια μου που μιλουσε για τα αριθμητικα συστηματα. Δυστυχως το βιβλιο ειναι στα αγγλικα και μιας τα αγγλικα μου δεν ειναι καθολου καλα, εχω πολλες αποριες.

Αυτο που δεν καταλαβα είναι:
Λεει οτι μπορουμε να αναπαραστισουμε ενα αριθμο αρνητικο με την βοηθεια του συμπληρώματος του 1 (*). Απο οσο καταλαβα το θετικο 28 ειναι το 11100 και το αρνητικο 28 ειναι το 11100011.

Ομως το 11100011 ειναι το 227 :worry:

Πως θα τους ξεχωριζουμε;

(*) χρησιμοποιω το συμπληρωμα του 1 και οχι του 2 , ασχετως αν ειναι ειναι "καλλιτερο" για να μην μπερδευτω περισσοτερο
Από ότι θυμάμαι, πρέπει για κάθε δυαδικό αριθμό να ξέρεις και τι παράσταση χρησιμοποιείς (δηλ. συμπλήρωμα του 1, συμπλήρωμα του 2, ή μη προσημασμένοι αριθμοί).
Όπως λες, το 11100011 μπορεί να υποδηλώνει το -28 (στην παράσταση συμπληρώματος του 1) ή το 227 (σε παράσταση μη προσημασμένου αριθμού [unsigned]) ή ακόμα κάτι τελείω διαφορετικό (σε παράσταση συμπληρώματος του 2).
Δεν μπορεί δηλ. ο άλλος να σου πει βρες μου τι παριστάνει το 11100011 χωρίς να σου δώσει πρώτα την παράστασή του.
Αυτά, αν και νομίζω ο gademis είναι πιο κατάλληλος να σε βοηθήσει

Σημείωση: Το μήνυμα αυτό γράφτηκε 20 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.

 
Και εγω που σιχαινομαι και δεν καταλαβαινω αυτα τα μαθηματικα, μπορειτε να μου πειτε σε τι χρησιμευουν? :stupid:

Σημείωση: Το μήνυμα αυτό γράφτηκε 20 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.

 
Αρχική Δημοσίευση από songless_bird:
Και εγω που σιχαινομαι και δεν καταλαβαινω αυτα τα μαθηματικα, μπορειτε να μου πειτε σε τι χρησιμευουν? :stupid:
Αρχιτεκτονική υπολογιστών, λογική σχεδίαση και τα ρέστα...
Όλα τα computers με αυτές τις αρχές είναι κατασκευασμένα

Σημείωση: Το μήνυμα αυτό γράφτηκε 20 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.

 
αν αποφασισεις να αλλαξεις σε συμπληρωμα του 2,σε βοηθαω!αλλα δυστηχως απο συμπλ. του 1 δεν ξερω!

Σημείωση: Το μήνυμα αυτό γράφτηκε 20 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.

 
Αρχική Δημοσίευση από O'Zorgnax:
Αρχιτεκτονική υπολογιστών, λογική σχεδίαση και τα ρέστα...
Όλα τα computers με αυτές τις αρχές είναι κατασκευασμένα
Μαλιστα... Μεχρι το δυαδικο 1 και 0 ,περναει δεν περναει ρευμα το καταλαβαινω. Στο αρνητικο 28 και θετικο 28 σας εχασα :D

Δηλαδη μιλαμε για προγραμματισμο? :stupid: again :D

Σημείωση: Το μήνυμα αυτό γράφτηκε 20 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.

 
Αρχική Δημοσίευση από songless_bird:
Μαλιστα... Μεχρι το δυαδικο 1 και 0 ,περναει δεν περναει ρευμα το καταλαβαινω. Στο αρνητικο 28 και θετικο 28 σας εχασα :D

Δηλαδη μιλαμε για προγραμματισμο? :stupid: again :D
Ε κάπως πρέπει να παρασταθούν και οι αρνητικοί αριθμοί στο δυαδικό σύστημα... και αυτόν τον τρόπο βρήκαν οι άνθρωποι :D.
For more info (Exposed και για σένα πάει αυτό) look here

Σημείωση: Το μήνυμα αυτό γράφτηκε 20 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.

 
Αρχική Δημοσίευση από O'Zorgnax:
Ε κάπως πρέπει να παρασταθούν και οι αρνητικοί αριθμοί στο δυαδικό σύστημα... και αυτόν τον τρόπο βρήκαν οι άνθρωποι :D.
For more info (Exposed και για σένα πάει αυτό) look here
Thanx για το Link. Κατι καταλαβα... Αλλα μαλλον δεν θα ασχοληθω :D Ευτυχως που υπαρχουν καποιοι και κανουν τη ζωη του απλου χρηστη ευκολη. Σπαζοκεφαλιαζοντας με μαθηματικα και προγραμματισμο.

Απεχω :D Καληνυχτα.

Σημείωση: Το μήνυμα αυτό γράφτηκε 20 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.

 
Αρχική Δημοσίευση από Exposed_Bone:
Ετυχε να πεσει ενα βιβλιο στα χερια μου που μιλουσε για τα αριθμητικα συστηματα. Δυστυχως το βιβλιο ειναι στα αγγλικα και μιας τα αγγλικα μου δεν ειναι καθολου καλα, εχω πολλες αποριες.

Αυτο που δεν καταλαβα είναι:
Λεει οτι μπορουμε να αναπαραστισουμε ενα αριθμο αρνητικο με την βοηθεια του συμπληρώματος του 1 (*). Απο οσο καταλαβα το θετικο 28 ειναι το 11100 και το αρνητικο 28 ειναι το 11100011.

Ομως το 11100011 ειναι το 227 :worry:

Πως θα τους ξεχωριζουμε;

(*) χρησιμοποιω το συμπληρωμα του 1 και οχι του 2 , ασχετως αν ειναι ειναι "καλλιτερο" για να μην μπερδευτω περισσοτερο

Καταρχάς έχει σημασία στα πόσα bits μετράμε τον αριθμό. Αν είναι αρνητικός στα MSB (most significant bits - τα πιο αριστερά bits) τα γεμίζουμε με άσσους αλλιώς με μηδενικά.

Έστω ότι θέλουμε το -28 στα 8 bits. Τότε έχουμε +28 = 00011100. Το συμπλήρωμα ως προς 1 βγαίνει αντιστρέφοντας τα bits. -28 = 11100011
Το πως τα ξεχωρίζει ο υπολογιστής είναι ζήτημα αρχιτεκτονικής. Στις περισσότερες αρχιτεκτονικές χρησιμοποιείται το Σ-2 γιατί στο Σ-1 υπάρχουν δύο απεικονίσεις του μηδενός και δημιουργείται πρόβλημα.

Ελπίζω να βοήθησα..

Σημείωση: Το μήνυμα αυτό γράφτηκε 20 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.

 
Αρχική Δημοσίευση από emufear:
Καταρχάς έχει σημασία στα πόσα bits μετράμε τον αριθμό. Αν είναι αρνητικός στα MSB (most significant bits - τα πιο αριστερά bits) τα γεμίζουμε με άσσους αλλιώς με μηδενικά.

Έστω ότι θέλουμε το -28 στα 8 bits. Τότε έχουμε +28 = 00011100. Το συμπλήρωμα ως προς 1 βγαίνει αντιστρέφοντας τα bits. -28 = 11100011
Το πως τα ξεχωρίζει ο υπολογιστής είναι ζήτημα αρχιτεκτονικής. Στις περισσότερες αρχιτεκτονικές χρησιμοποιείται το Σ-2 γιατί στο Σ-1 υπάρχουν δύο απεικονίσεις του μηδενός και δημιουργείται πρόβλημα.

Ελπίζω να βοήθησα..

Δλδ το συπληρωμα του 1 για τον αριθμο 28 σε 8bits ειναι 11100011 αλλα σε 16bitis ειναι 1111111111100011;:worry:

Αρχική Δημοσίευση από O'Zorgnax:
Ε κάπως πρέπει να παρασταθούν και οι αρνητικοί αριθμοί στο δυαδικό σύστημα... και αυτόν τον τρόπο βρήκαν οι άνθρωποι :D.
For more info (Exposed και για σένα πάει αυτό) look here
οχι αλλα αγγλικα λυπηθυτε με :P:P:P (γμτ γιατι παρατησα τα αγγλικα μου.... :()

Σημείωση: Το μήνυμα αυτό γράφτηκε 20 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.

 
Αρχική Δημοσίευση από Exposed_Bone:
Δλδ το συπληρωμα του 1 για τον αριθμο 28 σε 8bits ειναι 11100011 αλλα σε 16bitis ειναι 1111111111100011;:worry:
yeap. Σκέψου ότι το +28 είναι 0000000000011100

λέγεται επέκταση προσήμου, sign extension.

Σημείωση: Το μήνυμα αυτό γράφτηκε 20 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.

 
Υποθετουμε οτι δουλευουμε με συμπληρωμα του 1 ... Αν θυμαμαι καλα το MSB αν ειναι 1 σημαινει αρνητικο και αν ειναι 0 σημαινει θετικο; ή τα εχω μπερδεψει τελειως;

Σημείωση: Το μήνυμα αυτό γράφτηκε 20 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.

 
Αρχική Δημοσίευση από Exposed_Bone:
Υποθετουμε οτι δουλευουμε με συμπληρωμα του 1 ... Αν θυμαμαι καλα το MSB αν ειναι 1 σημαινει αρνητικο και αν ειναι 0 σημαινει θετικο; ή τα εχω μπερδεψει τελειως;
σωστος,1 αρνητικο,0 θετικο η μηδεν

Σημείωση: Το μήνυμα αυτό γράφτηκε 20 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.

 
Αχ, άργησα.
Exposed πάντως το κλειδί ειναι οτι δεν ξεχωρίζεις τι αριθμός είναι αν δεν ξέρεις εκ των προτέρων τι συστημα χρησιμοποιείς.
Επίσης να αναφέρω οτι χρησιμοποιούμε το two's complement συνήθως γιατι ισχύει οτι αν κανεις κανονική (με τον ίδιο αλγόριθμο όπως για τους unsigned αριθμούς) πρόσθεση δουλεύει σωστά και με αρνητικούς αριθμούς, ενώ με 1's complement πρέπει να πάρεις "περιπτωσεις" αν ειναι ο ενας αρνητικός και να κάνεις ειδική πράξη αφαίρεσης.

Σημείωση: Το μήνυμα αυτό γράφτηκε 20 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.

 
Thanks παιδια ... μου λυσατε οτι αποριες ειχα :)

Σημείωση: Το μήνυμα αυτό γράφτηκε 20 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.

 

Χρήστες Βρείτε παρόμοια

  • Τα παρακάτω 0 μέλη και 0 επισκέπτες διαβάζουν μαζί με εσάς αυτό το θέμα:
    Tα παρακάτω 0 μέλη διάβασαν αυτό το θέμα:
  • Φορτώνει...
Back
Top