2010-03-27 11 views

Antwort

12

C# hat keinen word Typ. Wenn Sie short oder Int16 meinen, ist der Unterschied, dass ushort nicht signiert ist.

short kann ein beliebiger Wert sein, von -32768 zu 32767, während ushort von 0 zu 65535 sein kann. Sie haben den gleichen Gesamtbereich und verwenden die gleiche Anzahl von Bits, werden aber unterschiedlich interpretiert und haben unterschiedliche Maxima/Minima.

Erläuterung: A word ist ein allgemeiner Begriff aus der Informatik, der normalerweise für die größte einzelne Gruppe von Bits verwendet wird, die von der CPU in einem einzigen Vorgang verarbeitet werden kann. Wenn also Ihre CPU (und Ihr Betriebssystem) 32-Bit ist, dann ist ein Wort ein Int32 oder UInt32 (C#: int/uint). Wenn Sie auf einer 64-Bit-CPU/einem Betriebssystem arbeiten, ist ein Wort tatsächlich ein Int64/UInt64 (C#: long/ulong). Der Begriff "Wort" bezieht sich normalerweise nur auf die Bitgröße einer Variablen im Gegensatz zu der tatsächlichen Interpretation in einem Programm.

+0

Ah danke, ich denke, die Lektion, die ich gerade gelesen habe, hat nur konzeptionell darüber gesprochen und ich habe verstanden, dass es tatsächlich einen Worttyp gibt! – Adam

+0

Außerdem kann eine Sprache mehr als einen Namen für einen Typ haben. Zum Beispiel sind in C ein "int", ein "long" und ein "int32_t" in einigen Implementierungen gleich. – Zarel

+0

@Adam: Ich fügte eine Klarstellung hinzu, die meiner Meinung nach helfen könnte. "Wort" bezieht sich auf eine Gruppe fester Größe von Bits; Es gibt jedoch viele verschiedene Möglichkeiten, wie dieses Wort interpretiert werden kann, wobei jedes Wort einen Typ in einer Sprache bildet (wie zum Beispiel "int" oder "uint"). – Aaronaught

2

Ein (Maschine) Wort ist die native Größe der Prozessorregister. Es ist im Allgemeinen, was C als Größe für den int Datentyp verwendet hat. In C# haben die Datentypen eine feste Größe und sind nicht von der Prozessorarchitektur abhängig.

In Intel Assembler-Sprache des WORD Datentyp 16 Bits, ein DWORD (Doppelwort) ist 32 Bit und ein QWORD (Quad-Wort) sind 64 Bits bedeutet gekommen ist. Der Typ WORD wird auch in der Windows-API mit der gleichen Bedeutung verwendet. Der WORD Datentyp entspricht dem C# -Typ ushort.