Go number

Python015

Go number,第1张

Go中数值类型可细分为整数、浮点数复数三种,每种都具有不同的大小范围和正负支持。

整型分为两大类

Go提供了有符号和无符号的整数类型,同时提供四种大小不同的整数类型。

取值范围

等价类型

特殊整型

int 和 uint 分别对应特定CPU平台的字长(机器字大小),大小范围在 32bit 或 64bit 之间变化,实际开发中由于编译器和硬件不同而不同。

进制转换

转换函数

使用注意

字节长度

Golang提供了两种精度的浮点数分别为 float32 和 float64 ,它们的算术规范由IEEE754浮点数国际标准定义,IEEE754浮点数标准被现代CPU支持。

float32 类型的浮点数可提供约6个十进制数的精度, float64 类型的浮点数可提供约15个十进制数的精度。通常会优先选择使用 float64 ,因为 float32 累计计算误差会比较容易扩散。

计算机中复数(complex)由两个浮点数表示,一个表示实部(real)一个表示虚部(imag)。

Go语言中复数的值由三部分组成 RE + IMi ,分别是实数部分 RE 、虚数部分 IM 、虚数单位 i , RE 和 IM 均为 float 。

Go语言提供两种类型的复数,分别是 complex64 即32位实数和虚数, complex128 即64位实数和虚数, complex128 为复数的默认类型。

复数声明

z 表示复数的变量名, complex128 表示复数类型, complex() 内置函数用于为复数赋值。 x 和 y 分别表示构成该复数的两个 float64 类型的值, x 为实部, y 为虚部。

简写形式

对于 z 值可通过内置函数 real(z) 获取该复数的实部,使用 imag(z) 获取虚部。

浮点数是计算机中用来表示实数的数据类型。在计算机中,浮点数通常由三部分构成:数符、阶码、尾数。其中,数符表示浮点数的正负性,阶码表示浮点数的大小,尾数表示浮点数的精度。

题目中给出了浮点数的一些参数,包括:尾数为 4 位、阶码为 2 位、阶符为 1 位、数符为 1 位。根据这些参数,我们可以得到负数 -2.5 的浮点数表示形式。

首先,负数 -2.5 的数符为 1,表示它是一个负数。

其次,负数 -2.5 的阶码为 2,我们可以将它表示成二进制形式,即 10,然后将其左边补 0,使其位数为题目中给出的阶码位数,即 2,得到 0010。

接下来,负数 -2.5 的尾数为 0.5,我们可以将它表示成二进制形式,即 0.1,然后将其右边补 0,使其位数为题目中给出的尾数位数,即 4,得到 0100。