Seite 1 von 1

Rechnerorganisation[1]

Verfasst: Di 5. Mai 2009, 17:11
von Tankwart
Ich mach mal nur ein Thema auf, ist ja ziemlich kurz.
Hab folgende Ergebnisse:
PRIME_BBCODE_SPOILER_SHOW PRIME_BBCODE_SPOILER: auf Anzeigen klicken
1.1
0x567C
0x1220
0x455C
0xEDCB (16 bit Zahl)
5886
0x91A0
0x48D
9872
308

1.2
0
15
255 (8 bit Zahl)
1024

1.3
x = 6
y = z = 5

2.1
if (a) { x = b; }
else { x = c; }

2.2
i = x = 10

2.3
sum = 650

Re: Rechnerorganisation[1]

Verfasst: Di 5. Mai 2009, 21:03
von Josef
Hi,

ich hab teilweise andere Ergebnisse. Nen Kumpel von mir hat das Blatt getrennt von mir gerechnet und hat andere Ergebnisse raus.

Edit: Man sollte nicht posten, wenn man grad abgelenkt ist :D Der Kumpel hat das gleiche raus wie ich.
PRIME_BBCODE_SPOILER_SHOW PRIME_BBCODE_SPOILER: auf Anzeigen klicken
1.1
0x567C <-- Ja
0x1220 <-- Nein, 0x1230
0x455C <-- Nein, 0x444c
0xDCB <-- Nein, 0xedcb
5886 <-- Ja
0x91A0 <-- Ja
0x48D <-- Ja
9872 <-- Ja
308 <-- Ja

1.2
0 <-- Ja
15 <-- Ja
7 <-- Jein, kommt auf die Bitbreite an, wegen der führenden Nullen, die in Einsen umgewandelt werden.
1024 <-- Ja

1.3
x = 6 <-- Ja
y = z = 5 <-- Ja

2.1
if (a) { x = b; }
else { x = c; }
<-- Ja

2.2
i = x = 10 <-- Jein, die Aufgabenstellung liefert in der Form nen Laufzeitfehler, das Ergebnis stimmt sofern i wie x vor der for-Schleife deklariert wird.

2.3
sum = 650 <-- Ja
Gruß
Josef

Re: Rechnerorganisation[1]

Verfasst: Di 5. Mai 2009, 22:09
von Tankwart
Josef hat geschrieben:
PRIME_BBCODE_SPOILER_SHOW PRIME_BBCODE_SPOILER: auf Anzeigen klicken
1.1
4. 0xDCB <-- Nein, 0xedcb

Stimmt, hab die führenden Nullen vergessen. Ergebnis also 0xEDCB bei einer 16 bit Zahl.

1.2
3. 7 <-- Jein, kommt auf die Bitbreite an, wegen der führenden Nullen, die in Einsen umgewandelt werden.

Jo, hab jetzt 255 bei einer 8bit Zahl.
Die anderen hab ich aber nochmal durchgerechnet und wieder das Gleiche wie oben raus.

Re: Rechnerorganisation[1]

Verfasst: Di 5. Mai 2009, 22:11
von Thomas
im tutorium hieß es bei uns wir sollen integer als 4 byte zahlen nehmen.
ich frag mich nur ob man 1 bit als vorzeichen nehmen soll oder nicht.
ansonsten hab ich die gleichen ergebnisse die josef angegeben hat. btw was bedeutet eigentlich das %d in der letzten aufgabe

Re: Rechnerorganisation[1]

Verfasst: Mi 6. Mai 2009, 00:41
von Johann
Thomas hat geschrieben:ansonsten hab ich die gleichen ergebnisse die josef angegeben hat. btw was bedeutet eigentlich das %d in der letzten aufgabe
Das %d ist ein Platzhalter für eine ganze Zahl in der Ausgabe. printf() gibt formatierten Text aus, das 1. Argument ist dabei der Formatstring, danach übergibt man als Parameter die Werte, die eingesetzt werden sollen.

Re: Rechnerorganisation[1]

Verfasst: Do 7. Mai 2009, 21:37
von kimbo
also ich hab die zahlen dreher in 1.1.2) und 1.1.3) als vertipper gewertet und hab daher das gleiche raus wie Josef;)

bei der 2.3) is h = 1111.1111.1111.1111.1111.1111.1111.1111 (int) = -1

Re: Rechnerorganisation[1]

Verfasst: Do 7. Mai 2009, 22:15
von Thomas
hm muss man bei integer nicht ein bit fest als vorzeichen nehmen? wenn nicht stimm ich dir zu
bin übrigens immer noch der meinung dass bei 1.1.2 0x1230 und bei 1.1.3 0x444c rauskommt:

un zwar haben wir bei 1.1.2 an der betreffenden stelle 0011 & 0111 = 0011 = 3
und bei 1.1.3 haben wir 0001 0010 0011 0100 ^ 0101 0110 0111 1000 = 0100 0100 0100 1100 = 0x444C