单词 short
和ushort
C#有什么区别?它们都是16位!
问问题
20566 次
2 回答
21
C# 没有word
类型。如果您的意思是short
or Int16
,则区别在于ushort
未签名。
short
可以是从-32768
to 的任何值32767
,而ushort
可以是 from 0
to 65535
。它们具有相同的总范围并使用相同的位数,但以不同的方式解释,并且具有不同的最大值/最小值。
澄清:一个词是一个通用的计算机科学术语,通常用于指代 CPU 在单个操作中可以处理的最大单个位组。因此,如果您的 CPU(和操作系统)是 32 位的,那么单词就是一个Int32
或UInt32
(C#: int
/ uint
)。如果您在 64 位 CPU/OS 上,则单词实际上是Int64/UInt64
(C#: long
/ ulong
)。术语“字”通常仅指变量的位大小,而不是它在程序中的实际解释方式。
于 2010-03-27T03:25:55.523 回答
5
(机器)字是处理器寄存器的本机大小。它通常是 C 用作int
数据类型的大小。在 C# 中,数据类型具有固定大小,并且不依赖于处理器架构。
在 Intel 汇编语言中,WORD
数据类型意味着 16 位,DWORD
(双字)是 32 位,QWORD
(四字)是 64 位。WORD
Windows API 中也使用了该类型,含义相同。
因此,WORD
数据类型对应于 C# 类型ushort
。
于 2010-03-27T04:13:31.640 回答