Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » array und Zufall

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: [ 1 ] [ 2 ] [ 3 ] > 4 < [ 5 ]
030
17.12.2007, 17:51 Uhr
Hans
Library Walker
(Operator)


Bitte sehr.
Ich hoffe, Du verstehst das, was ich da geschrieben habe, denn darauf bauen die Erklärungen zum hexadezimalen und auch zum binären Zahlensystem auf...

Hans
--
Man muss nicht alles wissen, aber man sollte wissen, wo es steht. Zum Beispiel hier: Nachdenkseiten oder Infoportal Globalisierung.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
031
18.12.2007, 14:47 Uhr
wolf360



okey abber wieso ist des dann so:
17 = 1*2^0 + 1*2^4

müsste da nicht 18 stehn?


Die 0 wird nicht mit sich selbst multipliziert also bleibts 2 ? und die 2 wird vier mal mit sich selbst multipliziert also 16??

oder ist des weil X(in diesem fall 2) ^0 immer 1 ergibt? selbst dann frag ich mich, warum schreibt man dann 2^0 und nicht gleich 1^0?

und trotzdem verteh ich dann nicht warum ich dann weiß das 17 = 10001 is ?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
032
18.12.2007, 15:39 Uhr
Kest
saint


Hi!

Die Potenzen werden immer zuerst gerechnet. Es gilt auch: >a^0 = 1<.
Also, >1*2^0 + 1*2^4< = >1*1 + 1*16< = >17<. (d.h. >2^0=1< und >2^4=16<)
--
Wenn man einen Hufschlag hört, sollte man >Pferd< denken und nicht >Zebra<.

Dieser Post wurde am 18.12.2007 um 15:41 Uhr von Kest editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
033
18.12.2007, 15:42 Uhr
wolf360



ja okey,

aber dann stellt sich mir aber die blöde frage warum schreib ich dann 2^0 und nicht gleich 1^0??

und woher weiß ich dann aber das auch die 17 = 10001 is?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
034
18.12.2007, 15:48 Uhr
Hans
Library Walker
(Operator)


Hi,

Zitat von wolf360:
okey abber wieso ist des dann so:
17 = 1*2^0 + 1*2^4

müsste da nicht 18 stehn?


Nö.


Zitat:
Die 0 wird nicht mit sich selbst multipliziert also bleibts 2 ?


Nein, Fehler. Da wird ja nicht die 0 potenziert, sondern die 2.


Zitat:
und die 2 wird vier mal mit sich selbst multipliziert also 16??


stimmt.


Zitat:
oder ist des weil X(in diesem fall 2) ^0 immer 1 ergibt?


Ganz genau.


Zitat:
selbst dann frag ich mich, warum schreibt man dann 2^0 und nicht gleich 1^0?


Weil Pablo in dem Beispiel das binäre Zahlensystem verwendet hat. 1^0 ergibt zwar auch 1, aber das wäre dann ein Zahlensystem zur Basis 1, hätte also nur ein Ziffernsymbol, weil die 1 die Basis ist. Und dass kann ich mir dann doch nur schwer vorstellen.


Zitat:
und trotzdem verteh ich dann nicht warum ich dann weiß das 17 = 10001 is ?

Das sollte jetzt ja hoffentlich klar werden.
1*2^4 + 1*2^0 = 16 + 1 =17

Hans
--
Man muss nicht alles wissen, aber man sollte wissen, wo es steht. Zum Beispiel hier: Nachdenkseiten oder Infoportal Globalisierung.

Dieser Post wurde am 18.12.2007 um 15:54 Uhr von Hans editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
035
18.12.2007, 15:52 Uhr
wolf360



[quote]
Das sollte jetzt ja hoffentlich klar werden.
1*2^4 + 1*2^0 = 16 + 1 =17
[/quto]

ja okey des mit dem 16+1 und so hab ich etz scho verstanden aber kappier einfach nicht was das mit 10001 zu tun hat..
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
036
18.12.2007, 15:57 Uhr
Hans
Library Walker
(Operator)


10001 = 1*2^4 + 0*2^3 + 0*2^2 + 0*2^1 + 1*2^0

Die Einsen und Nullen vor dem * entsprechen jeweils den Ziffern der Zahl.

Hans
--
Man muss nicht alles wissen, aber man sollte wissen, wo es steht. Zum Beispiel hier: Nachdenkseiten oder Infoportal Globalisierung.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
037
18.12.2007, 17:30 Uhr
wolf360



aber ich könnt die aufgabe doch auch voll verden. z.B.


Hans
Library Walker

10001 = 0*2^3 + 0*2^1 +1*2^4 + 0*2^2 + 1*2^0 ??

und wie find ich z.B. raus was 18 is?

gibts da irgendwelche regeln??
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
038
18.12.2007, 19:49 Uhr
0xdeadbeef
Gott
(Operator)


Es ist halt Konvention, das in der Reihenfolge hinzuschreiben, um die Zahlen darzustellen. Das kennst du ja von Dezimalzahlen auch nicht anders - sieh mal:

Code:
10³ 10² 10¹ 10°
1   2   3   4    --> 1234 = 1 * 10³ + 2 * 10² + 3 * 10¹ + 4 * 10°

2³  2²  2¹  2°
1   0   0   1    --> 1001 (bin) = 1 * 2³ + 0 * 2² + 0 * 2¹ + 1 * 2° = 9 (dez)


(hoch null hier durch ° angenähert). Im Grunde hast du recht, man kann das auch verdrehen, nur muss man sich auf eine bestimmte Verdrehung einigen, damit eine Zahlendarstellung einen Sinn ergibt. In der Computertechnik ist es zum Beispiel durchaus üblich, das ganze umzudrehen und von links nach rechts zu schreiben.
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra

Dieser Post wurde am 18.12.2007 um 19:50 Uhr von 0xdeadbeef editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
039
18.12.2007, 20:19 Uhr
Hans
Library Walker
(Operator)



Zitat von wolf360:
und wie find ich z.B. raus was 18 is?

gibts da irgendwelche regeln??

Klar gibt es die.
Ich hab Dir doch im Posting 27 das System bei den Dezimalzahlen beschrieben. Genau so verhält es sich bei den binären Zahlen auch, nur das man da keine Zehner, Hunderter oder Tausenderstellen hat, sondern 2er, 4er, 8er usw.
Grafisch sieht das dann so aus:

Code:
1001
^^^^
||||
|||+- Einerstelle
||+-- Zweierstelle
|+--- Viererstelle
+---- Achterstelle



Wenn man das jetzt mit Hilfe der Potenzen ausdrückt, kommt das hier dabei heraus:

1001 = 1*2^3 + 0*2^2 + 0*2^1 + 1*2^0

Dabei ist:

Code:
1*2^3 die Achterstelle = 1 * 8 = 8
0*2^2 die Viererstelle = 0 * 4 = 0
0*2^1 die Zweierstelle = 0 * 2 = 0
1*2^0 die Einerstelle  = 1 * 1 = 1



Wenn man die Zahlen am Ende zusammenrechnet kommt 9 heraus.
Bei grösseren Zahlen erweitert man das entsprechend nach links, so das eine 8-bit-Zahl A so aussieht: (jetzt mal allgemein ausgedrückt)

A = a7*2^7 + a6*2^6 + a5*2^5 + a4*2^4 + a3*2^3 + a2*2^2 + a1*2^1 + a0*2^0

a7, a6, a5, a4, a3, a2, a1 und a0 sind die einzelnen Ziffern und können entweder Null oder Eins sein. Damit kann A Werte zwischen 0000 0000 und 1111 1111, bzw. dezimal 0 und 255 annehmen.

Man kann sich jetzt auch noch 'ne Tabelle bauen, um das ganze zu verdeutlichen:

Code:
Dez.  Bin.
00    0000  
01    0001  
02    0010  
03    0011  
04    0100  
05    0101  
06    0110  
07    0111

08    1000
09    1001
10    1010
11    1011
12    1100
13    1101
14    1110
15    1111
      ^^^^
      ||||
      |||+- Einerstelle  = 2^0 = 1
      ||+-- Zweierstelle = 2^1 = 2
      |+--- Viererstelle = 2^2 = 4
      +---- Achterstelle = 2^3 = 8



Alles klar?


Hans

(Ich glaube, ich sollte das alles mal zu einem kompletten Aufsatz zusammenfassen, und in die FAQs schreiben... )
--
Man muss nicht alles wissen, aber man sollte wissen, wo es steht. Zum Beispiel hier: Nachdenkseiten oder Infoportal Globalisierung.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: [ 1 ] [ 2 ] [ 3 ] > 4 < [ 5 ]     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: