efinf:blc2016:lektion20160906

  • signed ints (Vorzeichenbehaftete Ganzzahlen). Anzahl Bytes ist festgelegt (typischerweise 8 auf 64-Bit Systemen). Höchstwertigstes Bit gibt Vorzeichen an (0 +, 1 -).
  • Gegeben: Positive Zahl n (binär), gesucht Gegenzahl (binär): Bilde das Komplement von (n-1).
  • Gegeben: Negative zahl -n (binär), gesucht Gegenzahl (binär): Bilde Komplement von -n, addiere 1.
  • Grösste Positive Zahl: 0x7f…ff. Kleinste negative Zahl: 0x10…00. Umfang $-2^{n-1}$ bis $2^{n-1}-1$ wenn man $n$ Bits zur Verfügung hat.
  • In vielen Programmiersprachen wird nicht auf Überlauf geprüft, d.h. wenn das Resultat einer Addition grösser ist, als die grösste positive Zahl, wird das Resultat einfach negativ (wie z.B. in C oder Java). In Ruby gibt es keine Überläufe, es wird einfach der Zahltyp gewechselt (von Fixnum zu Bignum). Beispiel mit 32-Bit Zahlen: 2147483647+1=-2147483648
  • efinf/blc2016/lektion20160906.txt
  • Last modified: 2016/09/11 11:20
  • by Ivo Blöchliger