Was genau sind Bytes ?

  • VB.NET

Es gibt 31 Antworten in diesem Thema. Der letzte Beitrag () ist von Artentus.

    Was genau sind Bytes ?

    ^topic

    Ich weiß, dass das Zahlen sind und man diese für Dateien (z.B. Textdateien) verwendet, doch ich weiß immer noch nicht so richtig was das ist, also wofür verwende ich Bytes noch?

    Ausserdem noch eine Frage;

    Wofür sind Strukturen gedacht?
    Ich habs jetzt so verstanden, dass Strukturen dazu gedacht sind als sozusagen "Oberbegriff" von einer Anzahl an Deklarationen, halt um den Code übersichtlicher zu halten.
    Aber ginge das denn nicht auch mit Regionen?

    Hab mich hoffentlich verständlich ausgedrückt.^^
    Moin,

    gugge dir bezüglich der Bytes mal diesen Artikel auf Wikipedia an, dort es ist einleuchtend beschrieben.

    de.wikipedia.org/wiki/Byte

    wegen der structuren liest du am besten im Visual basic das Entwicklerbuch 2010 auf Seite 442 das es mitlerweile auch kostenlos zum downoaden gibt

    microsoft-press.de/url.asp?cnt=mspress_vb2010

    mfG

    Derfuhr

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Derfuhr“ ()

    Was ist ein Byte?

    -Direkt verwendet man Bytes eigentlich selten, eher indirekt z.B in Form
    von Filestreams, sie "bilden" halt eine Datei wenn man sie schreibt in einer bestimmten Reihenfolge.

    Structures (Strukturen) geben an wie ein Element/Elemente aussehen soll/en.


    Beispiel:


    VB.NET-Quellcode

    1. Public Structure Benutzer
    2. Public Name, Vorname As String
    3. Public Alter As Short
    4. End Structure

    VB.NET-Quellcode

    1. Dim AlleBenutzer As New List(Of Benutzer)
    2. Jetzt kann man ein Objekt aus dieser Structure erzeugen.
    3. Dim BenutzerEins As New Benutzer
    4. BenutzerEins.Name = "Mustermann"
    5. BenutzerEins.Vorname = "Max"
    6. BenutzerEins.Alter = CShort(20)
    7. 'Auf BenutzerEins kann man jetzt zugreifen, es ist ein Objekt mit den Eigenschaften die gesetzt wurden.
    8. AlleBenutzer.Add(BenutzerEins)
    9. AlleBenutzer(0).Name würde "Mustermann" zurückgeben.




    Regions (Regionen) sind eigentlich größtenteils für die Übersicht/Optik gedacht.

    Mit Regionen kann man bestimmte Codebereiche/Klassen in eine Region packen
    und diese Region ein oder Ausblenden. Hat nicht viel Funktionalität.
    Ja den Wikipedia artikel hab ich schon gelesen.^^
    Aber mir ging es eher darum, z.B. hab ich auch gelesen, dass man wenn man Befehle senden will an ein externes "Objekt", man auch Bytes sendet.
    Nur kann ich mir das überhaupt nicht vorstellen, wie das gemeint ist und wie man da vorgehen soll.
    Ich wollte nämlich auch mal rausfinden, wie Ich z.B. mit einem Programm meinen Fernseher o.ä. externe Geräte an/aus schalten kann oder Sie anderweitig steuern/ihnen Befehle senden kann.

    RushDen schrieb:

    Programm meinen Fernseher o.ä. externe Geräte an/aus schalten kann oder Sie anderweitig steuern/ihnen Befehle senden kann.


    Um geräte mit 230V Betriebsspannung zu schalten benötigst du Beispielweise eine Relaiskarte, die für diese Spannung ausgelegt ist, die man am SerialPort u.U. auch am USB-Port anklemmt, um diese aus VB ansteuern zu können, nutzt man z.B. das SerialPort Control das in der ToolBox zu finden ist. Willst du auf dem Fernseher auch umschalten, musst du dir mit einem Microcontroler eine IR-Fernbedienung zusammenbasteln,die dann auch so angesteuert wird. Um dir nähere Informationen zu solchen Dingen zu beschaffe, würde ich dir empfehlen mal in Foren zu lesen in denen solche Sachen hauptsächlich behandelt werden. Um das SerialPort-Control kennenzulernen zumindest Theoretisch gugge mal hier:

    msdn.microsoft.com/de-de/libra…ialport%28v=vs.85%29.aspx
    Also... Einen Programmierer zu fragen, was ein Byte ist, ist wie einen Tischler zu fragen, was ein Brett ist. Oder einen Bauarbeiter zu fragen was ein Ziegel ist.
    Ein Byte ist das zweit-elementarste, was Du beim Programmieren haben kannst. Noch elementarer ist ein Bit. Und weil wir das 8 mal brauchen, um ein Byte zu erklären, fangen wir damit an.

    Ein Bit stellt die elementarste Informationsgröße dar. An oder aus, 1 oder 0, wahr oder falsch, Lampe leuchtet oder ist dunkel, Tür offen oder geschlossen, .....
    Ein Bit wird, wenn es um Computer geht, üblicherweise mit 1/0 dargestellt, weil's einfach zu schreiben ist.
    Beim Programmieren wird gerne (insbesondere bei Basic) True (für "wahr", also 1) und False (für "falsch", also 0) verwendet.
    Oben hab ich einige Beispiele aufgezählt. Hier noch eins:
    Beim Programmieren verwendet man bei einem bedingten Sprung ein Bit, das darstellt, ob zu springen ist, oder nicht. Dabei spricht man von "Boolean", benannt nach George Boole. Ein Boolean ist ein Datentyp. Ein Ausdruck (z.B. eine Variable oder ein Vergleich) vom Typ Boolean kann entweder wahr oder falsch sein (True oder False).
    Ein bedingter Sprung sieht in VB so aus:

    VB.NET-Quellcode

    1. If Bedingung Then
    2. DestroyUniverse()
    3. End If

    Hier wird für die Bedingung ein Boolean verwendet. Denn mehr geht nicht. Der Code kann entweder ausgeführt werden oder eben nicht. Der code kann nicht 0.4, 255 oder "Roulladen" ausgeführt werden. Er kann nur ganz ausgeführt werden oder eben garnicht.
    Ein Beispiel:

    VB.NET-Quellcode

    1. If False Then
    2. DestroyUniverse()
    3. End If

    Das Universum wird hier nicht zerstört, denn wenn die Bedingung falsch ist (False), dann wird der Code übersprungen.

    VB.NET-Quellcode

    1. If 1 + 1 = 2 Then
    2. DestroyUniverse()
    3. End If

    1 + 1 ist - zumindest für Computer - 2. Das Universum wird hier also zerstört. Denn der Vergleich von 1 + 1 und 2 gibt einen Boolean zurück und der wird True sein.

    Jetzt wissen wir, was ein Bit ist (bzw. der Datentyp Boolean).
    Ein Byte ist jetzt eine zusammensetzung von 8 solchen Bits. Wobei, wie Du bei Wikipedia gelesen hast, nicht überall 8 gilt, aber das lassen wir mal beiseite.
    Ein Byte kann vieles darstellen. Es kann für ein Zeichen stehen, für die Zustände von 8 Lampen, ....
    Bei Computer stellt ein Byte aber üblicherweise einen Wert dar. Man könnte auch sagen eine Zahl. Computer zählen/rechnen mit Bytes (bzw. den Nachfolgern von Bytes, aber das kommt später).

    Wenn wir im Dezimalen-Zahlensystem eine Zahl aufschreiben, gibt es (wie der Name vermuten lässt) zehn (10) Ziffern, die wir verwenden können. Diese sind 0, 1, 2, 3, 4, 5, 6, 7, 8 und 9.
    Nehmen wir als Beispiel diese Menge an Kreisen:

    Quellcode

    1. O O O O O O O O O O O O O O O O O O O O
    2. O O O O
    (Beachte auch, wo ich die Zeilenumbrüche gesetzt habe)
    Wenn ich Dich bitte, zu zählen, wie viele Kreise das sind, dann wirst Du wahrscheinlich so antworten: 24
    Aber wie kommt das zustande?
    Zählen wir mal von Anfang an weg:
    Wir fangen mit der niederwertigsten Ziffer an: 0
    Dann haken wir einen Kreis ab und zählen "eins" (also 1, also eine Einheit) dazu. Dann haben wir das: 1
    Haken wir noch einen Kreis ab. Wieder eins dazuzählen: 2
    Dann nochmal: 3
    ...
    Und nochmal: 9
    Jetzt haben wir ein Problem. Wenn wir jetzt noch einen Kreis abhaken, können wir nicht mehr eins dazuzählen. Denn wir haben nach der Ziffer 9 keine Ziffer mehr. Und da passiert jetzt was interessantes:
    Wir schreiben 10. Also wir setzen die Stelle, die vorher 9 (Maximum) war zurück auf 0 (Minimum) und schreiben links daneben eine Einheit hin. Und jetzt ein kleiner Gedankensprung. Links von der Ziffer 9 hatten wir bereits eine Ziffer 0. (Nur um das zu verdeutlichen: wenn ich die Zahl 5902384123 aufschreibe, dann gibt's nach links weg undendlich viele 0-en. Man kann also auch schreiben 005902384123 oder 00000005902384123. Man lässt diese Nullen aber weg, weil sie keine nötige Information beinhalten.)
    Durch das Weiterzählen von 9 auf das nächste, also durch das Zurückspringen von 9 auf 0 haben wir zu der 0 links daneben eins dazugezählt. Deswegen ist es jetzt 1.
    Zählen wir weiter: Wir haben 10 und das nächste ist dann 11. Es wurde wieder zur Stelle ganz rechts eins dazugezählt.
    Dann kommt 12. Dann 13 ......
    Und dann 19.
    Und jetzt passiert das Gleiche nochmal. Wir springen wieder von 9 auf 0 und zählen zur Stelle links daneben eins dazu: 20
    Und das geht dann weiter bis 24.

    Um das zu vertiefen drehen wir das Beispiel um: Ich bitte Dich, 12 Kreise aufzuzeichnen.
    12 ist so zusammengesetzt: 2 an der Stelle ganz rechts. Und an der Stelle links daneben 1.
    Das wäre also schonmal so viel:

    Quellcode

    1. O O

    Und jetzt noch die Stelle links daneben. Das ist aber nicht einfach nur das hier:

    Quellcode

    1. O

    sondern das:

    Quellcode

    1. O O O O O O O O O O

    Und da wirst Du mir wohl kaum widersprechen, wenn ich sage, dass das das zehnfache ist. Also das 10-fache. Und hier liegt wieder ein ganz wichtiger Zusammenhang: Wir reden vom dezimalen Zahlensystem. "dezi" hat was mit "zehn" zu tun. Also das Zahlensystem, bei dem es zehn Ziffern gibt. Und ich schreibe das nochmal ganz fett hin: Das Zahlensystem, bei dem es 10 Ziffern gibt, also bei dem es eins null Ziffern gibt.
    12 Kreise ist also

    Quellcode

    1. O O O O O O O O O O
    2. O O


    Soooooo. Jetzt tief Luft holen, wir gehen nämlich zum Binären Zahlensystem über.
    Beim binären Zahlensystem gibt es (auch hier verrät es wieder der Name) zwei Ziffern. 0 und 1. (Wir vergleichen nochmal: Beim Dezimalen Zahlensystem gab es zehn Ziffern (also 10 Ziffern): 0, 1, 2, ....., 9)
    Ich habe mich bemüht, in den Absätzen oben Zahlen als Ziffernfolgen (so zum Beispiel: 4320395) hin zu schreiben, wenn ich von einer Zahl im Dezimalen Zahlensystem spreche. Um Dir zu sagen, dass da vierundzwanzig Kreise sind, schreibe ich die Zahl als Wort hin.
    In den folgenden zwei Absätzen werde ich Zahlen (wenn nicht explizit anders dazugeschrieben) im Binären Zahlensystem hinschreiben. Also mit 1011 meine ich nicht eintausendundelf sondern was anderes. Und wenn ich 4910 hin schreibe, dann darfst Du mir eine (sanfte) Nackenklatsche geben, weil dann hab ich mich vertan ;)

    Wir nehmen wieder das Kreise-zähl-Beispiel. Nur mit weniger Kreisen, sonst werden wir heute nicht mehr fertig ^^
    Wie viele Kreise sind das?:

    Quellcode

    1. O O O O O

    Du würdest jetzt, wenn Du im Dezimalen Zahlensystem antworten würdest, vermutlich 5 antworten (keine Nackenklatsche, weil ich hab's extra dazugeschrieben).
    Nur wie antwortest Du im binären Zahlensystem?
    Zählen wir wieder. Wir fangen wieder mit 0 an.
    Einen Kreis abhaken und eins dazuzählen. Wie gehabt wird 0 zu 1.
    Aber jetzt? Uns sind schon die Ziffern ausgegangen.
    Jetzt machen wir genau das gleiche wie oben. Es gibt ja diese ganzen 0-en auf der linken Seite. Wir nehmen also die Stelle, die sich links von der ganz rechten befindet und zählen da eins dazu. Gleichzeitig setzen wir die ganz rechte Stelle vom Maximum (1) auf das Minimum (0) zurück. Dadurch erhalten wir das: 10
    Wir sind jetzt also von 0 nach 1 nach 10 gekommen.
    Einen Kreis weiter: Wir zählen wieder eins zur ganz rechten Stelle dazu: 11
    Und jetzt wieder zurücksetzen und zur linken Stelle eins dazuzählen. Die linke Stelle ist aber auch schon 1. Wir machen hier genau das gleiche wie mit der rechten Stelle. Wir setzen zurück auf 0 und zählen zur Stelle links daneben eins dazu: 100
    Nochmal langsam:
    Wir haben 11, oder besser gesagt 011
    Wir zählen zur rechten Stelle eins dazu. Sie wird zurückgesetzt: 010
    Und es muss zur Stelle links daneben eins dazu gezählt werden. Sie wird ebenfalls zurückgesetzt: 000
    Und nochmal muss zur Stelle links daneben eins dazu gezählt werden: 100
    Das hab ich oben im Dezimalen Zahlensystem nicht gemacht, denn sonst hätten wir bis neunundneunzig zählen müssen.
    Jetzt gibt's noch einen Kreis. Abhaken und zur ganz rechten Stelle eins dazuzählen: 101.
    Das, was im Dezimalen Zahlensystem 5 wäre, ist im Binären Zahlensystem 101.
    Und jetzt zähle die Anzahl an Ziffern im Binären Zahlensystem. Du wirst feststellen, es sind zwei Ziffern. Also 10 Ziffern. Moment. Das hatten wir doch oben schon, oder? Im Dezimalen Zahlensystem gibt's zehn Ziffern. Dezimal dargestellt sieht diese Zahl so aus: 10
    Und im binären Zahlensystem gibt's zwei Ziffern. Binär dargestellt sieht diese Zahl so aus: 10
    Lustig, oder? Das funktioniert für jedes Zahlensystem. Hexadezimal: Es gibt sechzehn Ziffern. Die Zahl sechzehn in hexadezimaler Darstellung ist 10:
    00, 01, 02, 03, 04, 05, 06, 07, 08, 09, 0A, 0B, 0C, 0D, 0E, 0F, 10
    Und ich hoffe, Du verstehst jetzt, warum da die 0 auf 1 wechselt.

    Und nochmal ein umgedrehtes Beispiel:
    Zeichne 1011 Kreise auf.
    Ganz rechts ist 1, also das wäre schonmal das:

    Quellcode

    1. O

    Dann links daneben ist 1. Das ist wieder nicht einfach

    Quellcode

    1. O

    sondern das zwei-fache, also das 10-fache:

    Quellcode

    1. O O

    Und dann links daneben haben wir das zwei-fache vom zwei-fachen (das vier-fache), also 100. Weil da aber 0 steht, gibt's nur 0 mal 100 Kreise und das sind effektiv gar keine Kreise:

    Quellcode


    Und ganz links das 1000-fache:

    Quellcode

    1. O O O O O O O O

    Das macht zusammen:

    Quellcode

    1. O O O O O O O O
    2. O O
    3. O


    Jetzt weißt Du also, wie man binär zählt. Und jetzt zu den Bytes:
    Wie gesagt ist ein Byte eine Aneinanderreihung von 8 Bits. Jedes Bit kann als 0 oder 1 dargestellt werden. Und das passt super zur binären Zählweise. Die binäre Zahl 1011 kann super als 4 Bits dargestellt werden: wahr, falsch, wahr und wahr.
    Und jetzt mal die ganzen 8 Bits: Zähle mal binär bis 255. Da wirst Du auf 11111111 kommen. Das ist nämlich der höchste Wert, den ein Byte (8 Bits) darstellen kann. Wenn Du eins weiter Zählst, musst Du alle Bits nacheinander von rechts nach links zurücksetzen: 11111110, 11111100, und so weiter bis 10000000, 00000000 und dann zur Stelle links daneben eins dazuzählen: 100000000. Und das wären 9 Bits und das geht halt nicht, weil ein Byte nur 8 Bits hat.

    Noch ein paar Worte zum RAM: Ich vermute, Du weißt, wie viel Arbeitsspeicher Du eingebaut hast. Vermutlich 4GiB oder sowas in der Richtung. Nehmen wir mal als Beispiel 1GiB. GiB steht für Gibibyte. Gibi ist eine Größenordnung.
    1GiB = 1 * 1024MiB = 1 * 1024 * 1024KiB = 1 * 1024 * 1024 * 1024B(ytes)
    Also ein Gibibyte ist 1073741824 Bytes.
    Der Arbeitsspeicher (bzw. eigentlich jeder Speicher) ist eine Aneinanderreihung von Bytes. Eine RAM-Karte mit 1GiB hat 1073741824 Schubladen in denen jeweils ein Byte liegt (oder 8 Bits).
    Wenn Du eine Variable vom Typ Byte anlegst, dann gibt's da irgendwo in diesem riesigen Kasten eine Schublade für die Variable. Wenn Du der Variable einen Wert zuweist (zum beispiel 123), dann wird 01111011 in die Schublade abgelegt. Das sind Bytes. Und wie gesagt, jeder Speicher ist so aufgebaut. Wenn Du in eine Datei schreibst, dann schreibst Du Bytes. In diesem Fall steht jedes Byte für ein anzuzeigendes Zeichen. Zum Beispiel ein Byte, das dezimal 65 darstellt bzw. binär 01000001 steht für das Zeichen A, also ein großes a.
    Und das nächste, 66 wäre B. Dafür gibt's eigene Tabellen. Wenn Du also diesen Code ausführst:

    VB.NET-Quellcode

    1. System.IO.File.WriteAllBytes(PfadZurDatei, New Byte() {72, 97, 108, 108, 111, 32, 87, 101, 108, 116})

    und die Datei mit Notepad öffnest, wird Dir "Hallo Welt" angezeigt.

    Der Nachfolger zum Byte ist ... naja, alles was aus mehreren Bytes besteht. Hier ist der Integer üblich. Das ist ein Datentyp, der wie ein Byte aus Bits besteht. Und zwar aus 32 Bits. Weil wegen 32-Bit-Computern.
    Als Beispiel diese Zahl: 388540265
    Binär dargestellt wäre das: 10111 00101000 10100111 01101001 (Die Leerzeichen nur weil's leserlicher ist)
    Das sind 29 Bits. Was natürlich viel zu groß für ein Byte ist. Aber mit 4 Bytes würde es gehen. Und das ist, was ein Integer ist. 4 Bytes. Da wird im Arbeitsspeicher nicht eine einzelne Schublade reserviert, sondern gleich 4 nebeneinander. Und dann wird einfach in jede Schublade ein Teil des Integers abgelegt.

    Der Boolean-Datentyp ist bei .Net ein bisschen heikel. Denn man kann im Arbeitsspeicher nicht einfach so eine achtel Schublade reservieren. Bei .Net wird, wenn Du eine Boolean-Variable deklarierst, ein Integer reserviert. Und dann wird für False einfach 0 und für True 1 verwendet... bzw. 00000......001


    PS: Ich geh schlafen :P
    "Luckily luh... luckily it wasn't poi-"
    -- Brady in Wonderland, 23. Februar 2015, 1:56
    Desktop Pinner | ApplicationSettings | OnUtils

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Niko Ortner“ () aus folgendem Grund: Bibibyte ^^

    @RushDen:: Ursprünglich sind Bytes die kleinste Gruppe geschlossener Informationen, die von einer CPU verarbeitet werden können, also eine "Registerbreite".
    Bei den damaligen CPUs waren das halt 8 Bit. Dies ist im Rahmen der CPU-Entwicklung zu 16-, 32- und 64-Bit Veratbeitungsbreite aber beibehalten worden.
    Der Hauptspeicher eines Rechners ist immer noch Byte-weise organisiert (im Gegensatz zum Cache, der in der CPU-Breite organisiert ist).
    -----
    Eine Struktur ist einfach eine Gruppe von Bytes, die positionsabhängig eine bestimmte Bedeutung hat.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    eine Struktur erfüllt dieselbe Aufgabe wie eine Klasse, nämlich Daten beisammen halten, und zusätzlich Methoden definieren, die diese Daten manipulieren.
    gugge VeryBasics

    Der unterschied Struktur - Klasse besteht in der Art, wies an eine Variable zugewiesen wird.
    Bei einer Struktur wird eine byte-weise Kopie des Objekts erstellt und der Variablen zugewiesen.
    Bei einer Klasse wird das Objekt nicht byte-weise kopiert, sondern der Variablen wird eine Referenz (eine Art "Zeiger") auf das Original-Objekt zugewiesen.

    zu Struktur und Klasse dieses Buch lesen (hingegen das Galileio-Openbook ist Mist) - wurde ja schon gesagt.


    Ich habs jetzt so verstanden, dass Strukturen dazu gedacht sind als sozusagen "Oberbegriff" von einer Anzahl an Deklarationen, halt um den Code übersichtlicher zu halten.
    Aber ginge das denn nicht auch mit Regionen?
    Naja, "Oberbegriff" als etwas, was etwas zusammenfasst - nämlich Deklarationen - ist garnichtmal verkehrt.
    Aber mit #Regions hat das nix zu tun.
    Der Code, der eine Klasse oder Struktur codet, wird ja zu einem Datentyp kompiliert, sodass daraus zur Laufzeit Objekte gebaut werden können.

    #Regions sind garkein Code, sondern ist nur ein Gimmick des Editors, dass die darin eingeschlossenen Textzeilen ausgeblendet werden können.

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „ErfinderDesRades“ ()

    Was ich gestern noch erfahren habe, ist sowas hier. War mir bis gestern noch nicht bekannt. (Vorallem das mit dem Operator)
    Ich hänge nachher noch eine Erklärung von @Artentus an, die hat mir sehr gut gefallen/geholfen.

    VB.NET-Quellcode

    1. Option Strict On
    2. Public Class Form1
    3. Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    4. Dim v1 As New Value(10)
    5. Dim v2 As New Value(10)
    6. MessageBox.Show((v1 + v2).X.ToString())
    7. End Sub
    8. Public Structure Value
    9. Public Property X As Integer
    10. Sub New(ValueX As Integer)
    11. X = ValueX
    12. End Sub
    13. Public Shared Operator +(ByVal v1 As Value, ByVal v2 As Value) As Value
    14. Return New Value(v1.X + v2.X)
    15. End Operator
    16. End Structure
    17. End Class
    Kann man den Post von Niko Ortner vielleicht isolieren und irgendwo ins Tipps / Tricks posten und da pinnen? Der ist ganz große Klasse!

    Niko Ortner schrieb:

    Und jetzt zähle die Anzahl an Ziffern im Binären Zahlensystem. Du wirst feststellen, es sind zwei Ziffern. Also 10 Ziffern. Moment.

    Man sollte immer beachten, es gibt zum einen Zahlen und zum anderen Darstellugen von Zahlen. Zahlen sind an sich sehr abstrakte Dinge.

    Quellcode

    1. M = {A, B, C, D}


    Das ist eine Menge mit VIER Elementen. VIER ist die Zahl. "VIER" ist aber gleichzeitig nur EINE von praktisch unendlich vielen Darstellungen dieser Zahl...


    • Vier (deutsches Zahlwort)
    • Four (englisches Zahlwort)
    • IV (Römische Zifferndarstellung)
    • 1111 (Einersystem)
    • 100 (Zweiersystem)
    • 11 (Dreiersystem)
    • 10 (Vierersystem)
    • 4 (Fünfersystem)
    • 4 (Sechsersystem)
    • 4 (Siebenersystem)
    • ...

    Beachte: Letztere Darstellungen sind gleich, obwohl es unterschiedliche Stellenwertsysteme sind. D.h. die Ziffer "4" hat an ihrer jeweiligen Stelle eine ganz andere Bedeutung... Z.b. 44 im Fünfersystem ist nicht gleich 44 im Zehnersystem. Daher schreibt man auch die Basis in einen Index.

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Quadsoft“ ()

    @Quadsoft:
    Ja, das hätte ich noch dazunehmen können. Man könnte statt 1, 2, 3, .... 9 auch Apfel, Birne, Banane, .... Kirsche verwenden.
    Dann hätte jedes Zahlensystem ApfelBirne "Ziffern" (also immer noch eins null Ziffern), wobei es dann ja nicht mehr ziffern sind, sondern vielmehr... ähm... keine Ahnung wie man dazu sagt. Es klingt halt komisch, "Apfel" als Ziffer zu bezeichnen.
    Es geht halt darum, dass sich in der Sprache eingebürgert hat, die Zeichen 1, 2, 3 und so weiter zu verwenden.
    "Luckily luh... luckily it wasn't poi-"
    -- Brady in Wonderland, 23. Februar 2015, 1:56
    Desktop Pinner | ApplicationSettings | OnUtils
    @Niko Ortner

    Sie bei den alten Ägyptern

    de.wikipedia.org/wiki/%C3%84gyptische_Zahlschrift

    Achso noch was:

    Du hattest geschrieben:
    1GB = 1 * 1024MB = 1 * 1024 * 1024KB = 1 * 1024 * 1024 * 1024B(ytes)
    Also ein Gigabyte ist 1073741824 Bytes.


    Das ist leider falsch, 1 GB sind genau eine Milliarde Bytes, d.h. 1 GB = 1.000.000.000 Bytes
    Das was du meinst sind Gibibyte. (GiB)

    de.wikipedia.org/wiki/Bin%C3%A4rpr%C3%A4fix