Was ist der Unterschied zwischen einem
Wort
short
und ushort
in C#? Sie sind beide 16 Bits!Was ist der Unterschied zwischen einer kurzen und einer kurzen Zeit in C#?
Antwort
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.
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
.
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
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
@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