Int16 值类型表示值介于 -32768 到 +32767 之间的有符号整数。 Int32 值类型表示值介于 -2,147,483,648 到 +2,147,483,647 之间的有符号整数。 Int64 值类型表示值介于 -9,223,372,036,854,775,808 到 +9,223,3 ...
分类:
其他好文 时间:
2016-08-14 16:12:16
阅读次数:
143
1.有符号的值得右移位操作是不可移植的 2.移位操作的位数是个负数,是未定义的 3.连续赋值的各个变量的长度 不一,导致变量值截断。 编译器提示: 4.条件语句勿用=代替== 5.勿用 | 代替||, & 代替 && 6.不同的用于表示布尔值的非零值之间进行比较。 避免混合使用整型值和布尔值。 7. ...
分类:
其他好文 时间:
2016-08-14 14:43:19
阅读次数:
145
对于操作数的左位移都是相同的,右边空出来的位置用0补齐。 但是对于右位移,对于有符号和无符号数是不一样的,最高位的1有两种处理方式。逻辑位移和算术位移。 逻辑位移:右移入位用0补齐 算术位移:右移入位用原先的该值得符号位决定。 ...
分类:
其他好文 时间:
2016-08-14 11:37:55
阅读次数:
134
1个字节= 8位 tinyint 为一个字节 2的8次方= 256 所以最多存储到256 日期和时间数据类型 数值数据类型 整型 上面定义的都是有符号的,当然了,也可以加上unsigned关键字,定义成无符号的类型,那么对应的取值范围就要翻翻了,比如: tinyint unsigned的取值范围为0 ...
分类:
数据库 时间:
2016-08-12 00:59:17
阅读次数:
202
汇编:assembly 猜测:所以这个宏跟汇编有关?! 引用:某些常量宏会同时被C和asm引用,而C与asm在对立即数符号的处理上是不同的。asm中通过指令来区分其操作数是有符号还是无符号的,而不是通过操作数。而C中是通过变量的属性,而不是通过操作符。C中如果要指明常量有无符号,必须为常量添加后缀, ...
分类:
系统相关 时间:
2016-08-10 14:03:13
阅读次数:
276
文章最后本人做了一幅图,一看就明白了,这个问题网上讲的不少,但是都没有把问题说透。 32位机器上各种数据类型的长度如下:char:1(有符号无符号同) short:2(有符号无符号同) int:4(有符号无符号同) long:4(有符号无符号同) float:4 double:8 一、概念 对齐跟数 ...
分类:
其他好文 时间:
2016-08-09 22:02:52
阅读次数:
211
1.启动调试 前置条件:编译生成执行码时带上 -g,如果使用Makefile,通过给CFLAGS指定-g选项,否则调试时没有符号信息。gdb program //最常用的用gdb启动程序,开始调试的方式gdb program core //用gdb查看core dump文件,跟踪程序core的原因g ...
分类:
数据库 时间:
2016-08-06 17:38:11
阅读次数:
334
1.8086 ZF: 记录相关指令被执行后,是否为0. 0:置1 非0:0 CF:进位标记位 表示无符号数借位或者进位的值; SF:符号标记位 记录相关指令被执行后是否为负; 负:1 非负:0 OF:溢出标记位 有符号的 ...
分类:
其他好文 时间:
2016-08-06 14:22:04
阅读次数:
168
结构体-枚举类型 一、枚举类型 枚举(enum)是值类型的一种特殊形式,它从System.Enum继承而来,并为基础类型的值提供替代名称。枚举类型有名称、基础类型和一组字段。基础类型必须是一个除char 类型外的内置的有符号(或无符号)整数类型(如Byte、Int32或UInt64)。也可以说,枚举 ...
比如一个有符号位的8位二进制数11001101,逻辑右移就不管符号位,如果移一位就变成01100110。算术右移要管符号位,右移一位变成10100110。 逻辑左移=算数左移,右边统一添0 逻辑右移,左边统一添0 算数右移,左边添加的数和符号有关 附上代码: int sra(int x, int k ...
分类:
其他好文 时间:
2016-08-03 13:18:37
阅读次数:
210