We rechnet ein computer/taschenrechner von binär zu dezimal um?

4 Antworten

Taschenrechner rechnen nicht wirklich binär, das ist aber ein anderes Thema.

Woher weißt Du denn, welches Symbol Du für die Ziffern Null, Eins, Zwei usw. machst? Weils festgelegt ist.

Das ist beim Rechner nicht anders. Ich nutze die Ziffernwertigkeit (3) und lese eben an Index 3 die Pixeldaten (Matrix) für die Zifferndarstellung aus einer Tabelle aus. Alternativ hinterlege ich den Ansteuerungsvektor für die Segmentanzeige, oder nutze den Wert der Ziffer als Index innerhalb des Zahlenblocks eines Fonts, oder ....


mastergg 
Beitragsersteller
 09.06.2022, 23:30

Wird bei einer 12 dann eine 1 und eine 2 oder eine 12 als ganzes abgelesen?

mastergg 
Beitragsersteller
 09.06.2022, 23:44
@KarlRanseierIII

Aber wie funktioniert das, woher weis der rechner, dass er bei 1100 eine 1 und eine 2 zeigen muss und bei 1110 eine 1 und eine 4 usw.?

KarlRanseierIII  09.06.2022, 23:51
@mastergg

Indem er ein Ganzzahldivision mit Rest macht ;-).

134 / 10 ist 13 Rest <4>

13 / 10 ist 1 Rest <3>

1/10 ist 0 Rest <1>

Und ich sagte bereits, Taschenrechner rechnen nicht dezimal, sondern in BCD, d.h. sie kodieren jede Dezimalstelle mit 4 Bits. Insofern müssen sie diese arbeit nciht machen.

Taschenrechner verwenden BCD, Binary Coded Decimal.

Dementsprechend gibt man an jeder Stelle einfach die entsprechende Ziffer von 0-9 aus.

Die 10 Ziffern (also welcher Input welchen Pixel-Output erzeugt) sind wohl hardgecoded, das ist immer gleich:

0=0000
1=0001
2=0010
3=0011
4=0100
5=0101
6=0110
7=0111
8=1000
9=1001

Woher ich das weiß:Studium / Ausbildung – Bachelor in Informatik 👨🏻‍🎓

mastergg 
Beitragsersteller
 09.06.2022, 23:46

Und wie funktioniert das zum beispiel bei einer 13, bzw. 1101?

mastergg 
Beitragsersteller
 09.06.2022, 23:57
@KarlRanseierIII

Das heißt, die zahl wird in „Viererblöcken“ dargestellt und jeder block steht für eine Ziffer?

mastergg 
Beitragsersteller
 10.06.2022, 00:15
@KarlRanseierIII

Danke für deine antwort. Kann ein rechner auf diese art auch mit halb- und volladdierern rechnen?

KarlRanseierIII  10.06.2022, 00:42
@mastergg

Schauen wir doch mal kurz:

1001 (9)
0001 (1)
--------
1010

Klappt nicht so wirklich gut

Ich muß also einen BCD-Adder entwerfen, wenn ich nicht immer konvertieren will.

mastergg 
Beitragsersteller
 10.06.2022, 00:59
@KarlRanseierIII

Hab grade eine gute erklärung zu dieser methode gefunden, danke

Das besorgen Decoder.
Das sind fix "verdrahtete" Chips, Logikbausteine, die den Binärcode in den darzustellenden Code umwandeln.
Dieser Umwandlungsprozess im Chip ist durch das Display definiert und muss darauf abgestimmt, sei es ein 7-Segment-Display oder ein Punkt-Matrix-Display oder gar ein hochauflösendes Grafikdisplay.
Deshalb hat praktisch jedes Display seinen eigenen Decoder-Chip mit drauf.

Bild zum Beitrag

 - (Computer, Schule, Mathematik)

Ist halt das E.V.A Prinzip, Eingab,e Verarbeitung und Ausgabe, ein Taschenrechner ist eine sehr einfache Form davon.

Du gibst was ein, der "Rechner" verarbeitet das und gibt die Antwort auf dem Display aus.

Im Rechner ist halt eine Zuweisung gespeichert, das was du als 1 1 Beschreibst ist ja Binär viel abstrakter, da steht nirgends eine Zahl, das sind ehr Elektrische Impulse und man hat halt einprogrammiert wie der Taschenrechner auf welchen Impuls zu reagieren hat

So als wenn du ein Morsealphabet neben dir liegen hast, und Morsezeichen übersetzt...nur sehr sehr schnell


mastergg 
Beitragsersteller
 09.06.2022, 23:32

Aber eine 3 auf dem display sind ja nur festgelegte pixel, wird für jede zahl abgespeichert, welche pixel zur anzeige eingeschaltet werden?

Redekunst  09.06.2022, 23:33
@mastergg

Ja, genau, das ist wie ein Raster und da wird festgelegt wo ein Pixel ist und wo nicht

mastergg 
Beitragsersteller
 09.06.2022, 23:47
@Redekunst

Aber man kann doch nicht von 1 bis in den Milliardenbereich für jede zahl die pixel festlegen

Redekunst  09.06.2022, 23:48
@mastergg

Muss man auch nicht, ein Pixel hat eine Bestimmte Größe und das Display am Taschenrechner eine bestimmte Auflösung, wenn es 16x16 ist sind das 256 und es gibt ja nur die Zahlen von 0 bis 9