Schrift
[thread]1355[/thread]

Dualzahlen subtrahieren (schriftlich)

Leser: 1


<< |< 1 2 >| >> 15 Einträge, 2 Seiten
SirLant
 2003-09-16 16:12
#19313 #19313
User since
2003-08-04
516 Artikel
BenutzerIn
[default_avatar]
Ich habe als Hausaufgabe einige Rechenaufgaben bekommen, eine
ist folgende:
51-57 , in binärer Schreibweise sieht das ja so aus:
110011(51)
111010(57)

Wenn ich diese nun schriftlich voneinander abziehen will, wie geht
das dann?
Wenn ich von rechts nach links und mit Leihbeträgen arbeite, dann
komme ich nicht auf -0111(-7).
Habe die ganzen 90min Reli darüber nachgedacht und bin zu keinerlei
Möglichkeit gekommen, dies schriftlich zu lösen.Ich habe es
aber auch nicht geschafft diese Aufgabe im Dezimalsystem zu
lösen(schriftlich), gibt es da irgendeine Regel für diese Fälle?
--Programming today is a race between Software Enginers striving to build bigger and better idiot-proof Programs,
and the Universe trying to produce bigger and better idiots.
So far, the Universe is winning!
Thorium
 2003-09-16 17:46
#19314 #19314
User since
2003-08-04
232 Artikel
BenutzerIn
[Homepage] [default_avatar]
110011 (51)
111010 (57)

Der Gag daran ist, dass du mit einem Zahlenring rechnen musst.
Also, wie soll ich dir das nun erklären...
Nehmen wir Zahlen von -49 bis +49
Du erarbeitest nun einen Zahlenring.
0 entspricht 0
+1 entspricht +1
+2 entspricht +2
...
+49 entspricht +49
+50 ist nichts... undefiniert
+51 entspricht -49
+52 entspricht -48
....
+98 entspricht -2
+99 entspricht -1

Alles klar?
Also du hast einen Ring, beidem Oben die 0, und unten die 50 steht
Dann ziehst du rechts herum die Zahlen 1 bis 49
und links herum von Oben her -1 bis -49

Wenn du nun Minusrechnen willst, brauchst du die entsprechenden Zahlen nur zu Addieren:

30 - 12

+30 entspricht +30
-12 entspricht (bei einem System mit 100 stellen, wobei 50 die Mitte ist) (100 - 12) 88

30 + 88 = 118
118 lassen wir die 1 wegfallen, bleibt noch 18
+18 entspricht +18

30 - 12 = 18

So einfach...
Per|li|nist der; -en, -en <zu ↑...ist>: a) Anhänger, Vertreter der radikalen Perlinisten die Perl als die einzig wahre Sprache ansehen; b) Mitglied einer perlinistischen Community.
SirLant
 2003-09-16 17:51
#19315 #19315
User since
2003-08-04
516 Artikel
BenutzerIn
[default_avatar]
Ok danke, das sieht schonmal ziemlich gut aus :)
Und auf jeden Fall kann ich damit Pluspunkte im Unterricht
sammeln wenn ich das System vorstelle :laugh:
--Programming today is a race between Software Enginers striving to build bigger and better idiot-proof Programs,
and the Universe trying to produce bigger and better idiots.
So far, the Universe is winning!
Ishka
 2003-09-16 19:28
#19316 #19316
User since
2003-08-04
771 Artikel
HausmeisterIn
[Homepage] [default_avatar]
Vielleicht liegt es daran, daß 111010 58 und nicht 57 ist
sub z{if(@_){1while$x[$k=rand 10];t($t=$x[$k]=1)}print map"$z[$x[$_]]$_".($_%3?
"":"\n"),1..9}sub t{$j=0;$x[$_+1]==$t&&($j+=2**$_)for 0..8;z,die"Gewinner $z[$t]
"if grep$_==($j&$_),7,56,73,84,146,273,292,448;z,die"Gleichstand\n"if@x>9&&!grep
!$_,@x}@x=4;@z=qw{. [ (};z$^T&1;while(<>){next if$_>9||$x[$_];t$t=$x[$_]=2;z 1}
betterworld
 2003-09-16 23:59
#19317 #19317
User since
2003-08-21
2614 Artikel
ModeratorIn

user image
Oder einfach die kleinere von der groesseren Zahl abziehen und dann ggf ein Minuxzeichen vor das Ergebnis schreiben.
SirLant
 2003-09-17 00:02
#19318 #19318
User since
2003-08-04
516 Artikel
BenutzerIn
[default_avatar]
@Betterworld ich glaube das ist es, dürfte so ziemlich die
einfachste variante sein und ich glaube sogar, dass wir das
so in der Schule lernten.
Nichts gegen das Ringverfahren, aber diese Methode ist um
einiges einfacher.
--Programming today is a race between Software Enginers striving to build bigger and better idiot-proof Programs,
and the Universe trying to produce bigger and better idiots.
So far, the Universe is winning!
format_c
 2003-09-17 00:29
#19319 #19319
User since
2003-08-04
1706 Artikel
HausmeisterIn
[Homepage] [default_avatar]
Also als bei uns damals in der Prüfung schriftliches Rechnen mit Binärzahlen dran kam, hab ich mich immer gern darum gedrückt, weil ich das absolut ekelhaft fand.

Mann kann alles durch Umwandeln rechnen.
Binärzahl in Dec, rechnen, und wieder Zurück umwandeln.
Ich weis ist was für Weicheier. Damals wusste ich nocht nicht, das das eigendlich gar nicht so verkehrt ist.

Wurde aber genau so anerkannt.

Gruß Alex
Thorium
 2003-09-17 01:26
#19320 #19320
User since
2003-08-04
232 Artikel
BenutzerIn
[Homepage] [default_avatar]
Der witz mit dem ring war eigentlich nur bei boolscher algebra sinnvoll, da man da sehr einfach plus (und damit auch minus) rechnen kann.
Merke: alles was du mit dem 10ner system machen kannst, kannst du auch genauso auf alle anderen systeme anwenden. seis nun 2er oder 16ner.
trotzdem dürfte dir die sache mit dem ring einige pluspunkte geben ;)
Per|li|nist der; -en, -en <zu ↑...ist>: a) Anhänger, Vertreter der radikalen Perlinisten die Perl als die einzig wahre Sprache ansehen; b) Mitglied einer perlinistischen Community.
SirLant
 2003-09-17 09:36
#19321 #19321
User since
2003-08-04
516 Artikel
BenutzerIn
[default_avatar]
Werde den Ring dann wenn wir die boolsche Algebra haben spätestens
vorschlagen :)
Ich persönlich rechne in dual immer mit den dualzahlen, finde
ehrlich gesagt das rechnen im Dualsystem sogar einfacher als
im Dezimal.
--Programming today is a race between Software Enginers striving to build bigger and better idiot-proof Programs,
and the Universe trying to produce bigger and better idiots.
So far, the Universe is winning!
esskar
 2003-09-17 09:50
#19322 #19322
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
du könntest aber einfach auch mit 2's complement Zahlen arbeiten; dabei ist das erste bit das sign bit! wobei 0 + und 1 - bedeutet.
<< |< 1 2 >| >> 15 Einträge, 2 Seiten



View all threads created 2003-09-16 16:12.