Thursday 2 November 2017

1s Komplement Und 2s Komplement In Binary Option


Ich versuche, binäres Zahlensystem zu lernen und fast sehr neu. Ich habe gerade ein Kapitel über Binärzahl Konversation, Hinzufügen, Subtraktion etc mit einigen grundlegenden Dinge. Aber jetzt sehe ich ein Kapitel über 1s Komplement und 2s Komplement. Ich weiß, was ist signierte Nummer, signierte Größe und wie binäre Ziffer gespeichert in Speicher in 8bits, 16 Bits etc. Aber das Problem ist, ich konnte nicht verstehen, warum 1s ergänzen und 2s ergänzen. Auch warum sollten wir 2s ergänzen und warum es besser etc. Im nach einem Buch haben sie die Leitlinie in 1s ergänzen und 2s ergänzen konvertieren. Aber nichts erklärte, warum 1s ergänzen und 2s ergänzen. Also brauche ich etwas Hilfe, um es tiefer zu verstehen. Alle Buchvorschläge für Binärzahlsystem usw. werden geschätzt. Danke In Advance Robin fragte Jan 18 16 um 10:41 geschlossen als zu breit von 2501. fvu. Martin James. Unendliche Rekursion. Yvette Colomb 2. Februar 16 um 6:58 Es gibt entweder zu viele mögliche Antworten, oder gute Antworten wären zu lang für dieses Format. Bitte fügen Sie Details hinzu, um den Antwortsatz zu verkleinern oder ein Problem zu isolieren, das in einigen Absätzen beantwortet werden kann. Wenn diese Frage umgestaltet werden kann, um die Regeln in der Hilfe zu platzieren. Bitte bearbeiten Sie die Frage. Die Wikipedia-Artikel für 139s und 239s ergänzen und Binärzahlen beantworten alle Ihre Fragen und mehr. Ndash Jonathon Reinhart Jan 18 16 at 10:44 Besonders die Two39s Komplement-Seite enthält die wörtliche Antwort auf dich Frage: Das Two39s-Komplement-System hat den Vorteil, dass die grundlegenden arithmetischen Operationen von Addition, Subtraktion und Multiplikation mit denen für unsigned binary identisch sind Zahlen (solange die Eingaben in der gleichen Anzahl von Bits dargestellt sind und ein Überlauf jenseits dieser Bits aus dem Ergebnis verworfen wird). Diese Eigenschaft macht das System einfacher zu implementieren und in der Lage, mit hoher Präzision Arithmetik leicht zu handhaben. Ndash fvu Eine Kodierung ist notwendig, um alle zu akzeptieren, was ein Satz von 0 und 1 Bit-Werte bedeutet. Am offensichtlichsten, wenn Sie Text darstellen wollen, stimmt jeder, dass 01000001 39A39 bedeutet. Gleiches gilt für Zahlen, man muss sich darauf einigen, wie man negative Werte kodiert. Sie machten einen traurigen Fehler in den 1960er Jahren, ein Fehler, der diese Webseite ohne ersichtlichen Grund verfolgt. Es ist nicht wichtig, andere als Studenten zu unterrichten, dass die Kodierung wichtig ist. Ndash Hans Passant Jan 18 16 at 10:56 Vielen Dank für deine großartige Antwort. Nach der Lösung vieler Mathematik-Problem in binärer meine Erfahrung ist: in normalen binären Addition funktioniert gut bei der Arbeit mit 2 positiven Zahlen oder ohne Zeichen Bit. Aber beim Hinzufügen oder Subtraktion mit negativen Zahlen, die negative Zeichen Bits machen Problem. Aber es ist möglich, jede Addition oder Subtraktionsmethode mit 239s Komplementmethode zu lösen. Ndash Robin Islam Jan 19 16 at 10:26 1s Komplement ist einfach ein Bitwise NOT Gate, dh 1011 wird 0100. 2s Komplemente ist die am häufigsten für die Darstellung von signierten Ganzzahlen verwendet, weil es die Regeln der Addition und Subtraktion gehorcht. Wenn Sie 1 hinzufügen Bis 1111, bekommst du 0000. Daher sollte 1111 -1 sein. Sie können jedes System verwenden, aber einige haben cons oder Profis. 1s Komplement ist sehr einfach zu verstehen, aber bietet keine einheitliche Arithmetik (wenn Sie zwei Zahlen hinzufügen möchten, müssen Sie verschiedene Fälle unterscheiden, je nach den Zeichen der Operanden), so dass die Umsetzung in Hardware ist zu teuer. Ein weiteres Problem ist die Existenz von zwei 0 (eine negative und eine positive). 2s Komplement ist etwas viel schwerer zu verstehen, aber bieten eine sehr einfache einheitliche Arithmetik, müssen Sie nur Zahlen auf die gleiche Weise, was ist das Zeichen der Zahlen (zum Beispiel). So implementiert es zu einer billigeren Hardware. Antwortete am 18. Januar 16 um 11: 5918217s und 28217s Ergänzung einer Binärzahl mit einer Binärzahl als String, drucken ihre 18217s und 28217s Ergänzungen. 1s-Komplement einer Binärzahl ist eine weitere Binärzahl, die durch Umschalten aller Bits darin erhalten wird, d. h. das 0-Bit auf 1 und das 1-Bit auf 0 umwandelt. Das 2s-Komplement einer Binärzahl wird dem 1s-Komplement der Binärzahl hinzugefügt. Beispiele: Wir empfehlen Ihnen dringend, hier zu klicken und zu üben, bevor Sie zur Lösung gehen. Für one8217s Ergänzung müssen wir einfach alle Bits umdrehen. Für 28217s Komplement, finden wir zuerst one8217s Ergänzung. Wir durchqueren die one8217s Komplement ab LSB (niedrigstwertiges Bit) und suche nach 0. Wir Flip alle 18217s (Wechsel zu 0), bis wir eine 0 finden. Schließlich klopfen wir die gefunden 0. Zum Beispiel ist 28217s Komplement von 8220010008221 8220110008221 (Beachten Sie, dass wir zuerst ein8217s Komplement von 01000 als 10111 finden). Wenn es alle 18217s gibt (in one8217s Ergänzung), fügen wir eine extra 1 in der Zeichenfolge hinzu. Zum Beispiel ist 28217s Komplement von 82200008221 822010008221 (18217s Komplement von 82200008221 ist 82201118221). Unten ist C-Implementierung. Danke an Utkarsh Trivedi für oben Lösung. Als Nebennote, signierte Zahlen in der Regel verwenden 28217s Komplement Darstellung. Positive Werte werden so gespeichert, wie es ist und negative Werte werden in ihrem 28217s-Komplement-Formular gespeichert. Es ist ein zusätzliches Bit erforderlich, um anzugeben, ob die Zahl positiv oder negativ ist. Zum Beispiel ist char 8 Bits in C. Wenn 28217s Komplementdarstellung für char verwendet wird, dann wird 127 wie es ist, d. h. 01111111, wo das erste 0 positiv ist, gespeichert. Aber -127 ist als 10000001 gespeichert. Bitte schreiben Sie Kommentare, wenn Sie etwas falsches finden, oder Sie möchten mehr Informationen über das oben besprochene Thema zu teilen. Twos Complement Thomas Finley, April 2000 Inhalt und Einführung Twos Komplement ist kein kompliziertes Schema und ist nicht Gut bedient durch etwas langsames Deshalb, nach dieser Einführung, die erklärt, was zwei Komplement ist und wie man es benutzt, gibt es meist Beispiele. Twos Komplement ist die Art und Weise jeder Computer, den ich kenne, wählt, um ganze Zahlen darzustellen. Um die twos Komplement negative Notation einer Ganzzahl zu erhalten, schreibst du die Nummer in Binär. Sie invertieren dann die Ziffern und fügen Sie ein Ergebnis hinzu. Angenommen, wir arbeiten mit 8-Bit-Mengen (aus Gründen der Einfachheit) und nehmen wir an, wir wollen finden, wie -28 in zwei Komplement-Notation ausgedrückt werden würde. Zuerst schreiben wir 28 in binärer Form aus. Dann invertieren wir die Ziffern. 0 wird 1, 1 wird 0. Das ist, wie man schreiben würde -28 in 8 Bit binär. Konvertierung von Twos Complement Verwenden Sie als Beispiel die Nummer 0xFFFFFFFF. Im binären, das heißt: Was können wir über diese Zahl sagen Sein erstes (links) Bit ist 1, was bedeutet, dass dies eine Zahl darstellt, die negativ ist. Das ist genau so, dass die Dinge in zwei Komplementen sind: eine führende 1 bedeutet, dass die Zahl negativ ist, eine führende 0 bedeutet, dass die Zahl 0 oder positiv ist. Um zu sehen, was diese Zahl ein Negativ ist, kehren wir das Zeichen dieser Zahl um. Aber wie das zu tun ist Die Klassenzahlen sagen (auf 3.17), dass man das Zeichen umkehrt, einfach die Bits umkehren (0 geht auf 1 und 1 bis 0) und fügst eine der resultierenden Nummer hinzu. Die Inversion dieser Binärzahl ist natürlich: Dann fügen wir einen hinzu. So ist der Negativ von 0xFFFFFFFF 0x00000001, häufiger bekannt als 1. So 0xFFFFFFFF ist -1. Umwandlung in Twos Complement Beachten Sie, dass dies auf beide Weisen funktioniert. Wenn du -30 hast und es in 2s Komplement darstellen willst, nimm die binäre Darstellung von 30: Invertiere die Ziffern. Konvertiert zurück in hex, das ist 0xFFFFFFE2. Und in der Tat, nehmen Sie an, Sie haben diesen Code: Das sollte eine Ausgabe von -30 geben. Probieren Sie es aus, wenn Sie mögen. Arithmetik mit Twos Komplement Eine der schönen Eigenschaften von zwei Komplement ist, dass Addition und Subtraktion sehr einfach gemacht wird. Mit einem System wie zwei Komplementen können die Schaltungen für Addition und Subtraktion vereinheitlicht werden, wohingegen sie sonst als separate Operationen behandelt werden müssten. In den Beispielen in diesem Abschnitt mache ich Hinzufügung und Subtraktion in zwei Komplement, aber youll bemerken, dass jedes Mal, wenn ich tatsächliche Operationen mit binären Zahlen mache ich immer hinzufügen. Angenommen, wir wollen zwei Zahlen 69 und 12 zusammen addieren. Wenn sie Dezimalzahl verwenden würden, sehen wir die Summe 81. Aber lasst uns stattdessen binär verwenden, da das, was der Computer benutzt. Dies ergibt 12 - 69 -57, was richtig ist. Warum Inversion und Hinzufügen eines Works Invert und füge eins hinzu. Invertieren und hinzufügen. Es funktioniert, und du möchtest wissen, warum. Wenn es Ihnen egal ist, überspringen Sie das, da es kaum notwendig ist. Das ist nur für die Neugierigen gedacht, warum diese seltsame Technik eigentlich mathematisch sinnvoll ist. Invertieren und Hinzufügen klingt wie eine dumme Sache zu tun, aber seine eigentlich nur eine mathematische Abkürzung einer ziemlich einfachen Berechnung. Ausleihen und Subtraktion Erinnere dich an den alten Trick, den wir in der ersten Klasse von Leihen von zukünftigen Zehner-Leuten gelernt haben, um eine Subtraktion durchzuführen. Du darfst nicht, Als Beispiel, Ill tun 93702 minus 58358. Nun, dann, was ist die Antwort auf diese Berechnung Nun beginnen bei der am wenigsten signifikanten Ziffer, und subtrahieren Begriff durch Begriff. Wir können nicht abziehen 8 von 2, so gut leihen eine Ziffer von der nächsten bedeutendsten Ort (der Zehner Platz), um es 12 minus 8. 12 minus 8 ist 4, und wir beachten eine 1 Ziffer über der Zehner Spalte, um zu bedeuten, dass wir Muss sich daran erinnern, bei der nächsten Iteration von einem zu subtrahieren. Diese nächste Iteration ist 0 minus 5 und minus 1 oder 0 minus 6. Wieder können wir nicht 0 minus 6 machen, also leihen wir von der nächst bedeutendsten Figur noch einmal, um das 10 minus 6 zu machen, was 4 ist Iteration ist 7 minus 3 und minus 1 oder 7 minus 4. Dies ist 3. Wir müssen diese Zeit nicht ausleihen. Diese nächste Iteration ist 3 minus 8. Wieder müssen wir uns leihen, um 13 minus 8 oder 5 zu machen. Diese nächste Iteration ist 9 minus 5 und minus 1 oder 9 minus 6. Dies ist 3. Wir müssen das nicht leihen Zeit. So 93702 minus 58358 ist 35344. Ausleihe und seine Relevanz für die Negative einer Zahl Wenn Sie das Negativ einer Zahl finden wollen, nehmen Sie die Nummer und subtrahieren sie von Null. Nun, vermutlich waren wirklich dumm, wie ein Computer, und anstatt einfach ein negatives Vorzeichen vor einer Zahl A zu schreiben, wenn wir A von 0 subtrahieren, gehen wir tatsächlich durch die Schritte des Subtrahierens von A von 0. Nehmen Sie die folgende idiotische Berechnung von 0 minus 3: DecimalTwos Komplement-Konverter Über den DecimalTwo8217s Komplement-Konverter Dies ist ein Dezimal-zu-28217s Komplement-Konverter und ein 28217s Komplement zum Dezimalkonverter. Diese Konverter ergänzen nicht ihre Eingabe, das ist, sie nicht negieren es. Sie konvertieren es einfach zu oder von zwei8217s ergänzen Formular. Zum Beispiel konvertiert -7 in 11111001 (bis 8 Bits), was -7 in zwei8217s Komplement ist. (Ergänzend würde es 7 oder 00000111 bis 8 Bits machen). Ähnlich verwandelt 0011 in 3, nicht -3. So verwenden Sie die DecimalTwo8217s Complement Converter Dezimal zu Two8217s Complement Geben Sie eine positive oder negative Integer. Legen Sie die Anzahl der Bits für die 28217s Komplementdarstellung fest (falls anders als die Voreinstellung). Klicken Sie auf lsquoConvertrsquo um zu konvertieren. Klicken Sie auf lsquoClearrsquo, um das Formular zurückzusetzen und von vorne anzufangen. Wenn Sie eine andere Nummer umwandeln möchten, geben Sie einfach die ursprüngliche Nummer ein und klicken Sie auf lsquoConvertrsquo 8212 Es gibt keine Notwendigkeit, lsquoClearrsquo zuerst zu klicken. Wenn die Nummer, die Sie eingeben, zu groß ist, um in der angeforderten Anzahl von Bits dargestellt zu werden, erhalten Sie eine Fehlermeldung, die Ihnen so etwas erzählt (es wird Ihnen sagen, wie viele Bits Sie benötigen). Two8217s Ergänzung zu Dezimal Geben Sie eine 28217s Ergänzungsnummer 8212 eine Zeichenfolge von 0s und 1s ein. Legen Sie die Anzahl der Bits an die Länge der Eingabe an (falls abweichend von der Voreinstellung). Klicken Sie auf lsquoConvertrsquo um zu konvertieren. Klicken Sie auf lsquoClearrsquo, um das Formular zurückzusetzen und von vorne anzufangen. Der Ausgang wird eine positive oder negative Dezimalzahl sein. Exploring-Eigenschaften von Two8217s Complement-Konvertierung Der beste Weg, um zwei8217s Komplement-Umwandlung zu erkunden, ist, mit einer kleinen Anzahl von Bits zu beginnen. Zum Beispiel startet let8217s mit 4 Bits, die 16 Dezimalzahlen darstellen können, der Bereich -8 bis 7. Here8217s was der Dezimal-zu-282s-Komplement-Wandler für diese 16 Werte zurückgibt: Vier-Bit-Two8217s Komplement-Werte Egal wie viele Bits du benutzt hast In deiner two8217s Komplementdarstellung, -1 dezimal ist immer ein String von 1s in binärer. Konvertieren von Two8217s Complement Fixpunkt auf Dezimal Sie können die 28217s Komplement zum Dezimaltransverter verwenden, um Zahlen zu konvertieren, die sich in der Fixpunkt-Zwei8217-Komplement-Notation befinden. Zum Beispiel, wenn Sie 16-Bit-Nummern im Q7.8-Format haben. Geben Sie den 28217s-Komplementwert ein und teilen Sie die Dezimalantwort nur mit 2 8 auf. (Zahlen im Q7.8-Format reichen von -2 15 2 8 -128 bis (2 15 -1) 2 8 127.99609375.) Hier einige Beispiele: 0101111101010101 wandelt in 24405 und 244052 8 95.33203125 1101010101110111 konvertiert in -10889 und -108892 8 -42.53515625 Implementierung Dieser Konverter ist in beliebiger Präzisions-Dezimal-Arithmetik implementiert. Anstatt auf der binären Darstellung der Eingänge 8212 in der üblichen ldquoflip die Bits zu betreiben und 1rdquo Way 8212 hinzuzufügen, führt dies Operationen auf der dezimalen Darstellung der Eingänge durch, addiert oder subtrahiert eine Potenz von zwei. Im Einzelnen handelt es sich um das, was getan wird und wann: Dezimal zu zwei8217s komplementieren Nichtnegative Eingabe: Einfach in Binär und Pad mit führenden 0s konvertieren. Negative Eingabe (lsquo-rsquo Zeichen): Add 2 numBits. Dann in binär umwandeln. Two8217s Ergänzung zur Dezimalzahl Nichtnegative Eingabe (führendes lsquo0rsquo Bit): Einfach in Dezimal umwandeln. Negative Eingabe (führendes lsquo1rsquo Bit): Umwandeln in Dezimal, immer eine positive Zahl, dann subtrahieren 2 numBits. Aus praktischen Gründen hat I8217ve eine beliebige Grenze von 512 Bits an den Eingängen gesetzt.

No comments:

Post a Comment