hey, ich habe mal eine Frage zum rechnen in verschiedenen Zahlensystemen in AVR Studio. Kann ich direkt in verschiedenen Zahlensystemen rechnen. Also ein Byte als unsigned char mit einer integer Zahl vergleichen, addieren etc. Bzw. sagen das das Byte nun eine integer zahl sein soll. zb. unsigned char a=0b00000000; int b=0, b=a; Danke schonmal
Solange der Compiler das Format deiner Zahl richtig erkennt ist das alles kein Problem. Integer hat nichts mit binär oder hex zu tun. Und ein Byte der nun eine Integer Zahl sein soll, empfehle ich dir ein C Buch und dort das Kapitel typecast.
Felix schrieb: > hey, ich habe mal eine Frage zum rechnen in verschiedenen Zahlensystemen > in AVR Studio. Kann ich direkt in verschiedenen Zahlensystemen rechnen. Diese 'Zahlensysteme' sind nur unterschiedliche Schreibweisen für immer dasselbe: eine Zahl. Alles wird in einem Computer in Form eines Bitmusters gespeichert, die als Zahlen in unterschiedlichen Zahlensystemen visualisiert werden können. D.h. unsigned char c; c = 0b00110001; c = 0x31; c = 49; c = 061; c = '1'; das bewirkt alles dasselbe. In das Byte mit Namen c wird das Bitmuster 0011001 geladen. Du hast nur unterschiedliche Schreibweisen für dieses Bitmuster benutzt, je nachdem welche Schreibweise in welcher Situation am klarsten ist. Wenn es darum geht auszudrücken, wie die Bitkonfiguration tatsächlich ist, ist Binär- oder Hex-Schreibweise (oder Oktal - wird aber heutzutage eher selten benutzt) meistens das klarste. Wenn es darum geht auszudrücken, dass es sich um den ASCII Code eines Zeichens handelt, welches von einem Anzeigegerät als der Buchstabe 1 angezeigt wird, ist '1' am klarsten. Wenn es in der Programmsituation darum geht, dass 49 Äpfel in einer Kiste liegen, ist die dezimale Schreibweise am klarsten.
Ok, also genau genommen geht es mir darum aus einer integer zahl zu prüfen ob bit 0, 1, 2, 3, 4 usw gesetzt sind. Dies ist also möglich da alle zahlen als Bitmuster vorliegen?!
Felix schrieb: > Ok, also genau genommen geht es mir darum aus einer integer zahl zu > prüfen ob bit 0, 1, 2, 3, 4 usw gesetzt sind. Dies ist also möglich da > alle zahlen als Bitmuster vorliegen?! Natürlich. Bitmanipulation
Du kannst auch zwei Buchstaben miteinander addieren, multiplizieren oder voneinander subtrahieren. z.B. char a='u'; char c; c=a-'A'; cout << c; char d=c*2; Dann würde c also char '4' sein und d='h' oder auch 104 Dezimal oder 68 Hexadezimal oder 1101000 Binär. Dem Assembler bzw. der CPU selber ist egal was du machst. Du mußt wissen was du machst.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.