深入理解计算机操作系统(2.1.8 2.1.9)

xiaoxiao2021-02-28  96

C语言的逻辑运算

三种逻辑运算符:||、&&、! ||:只要有一个表达式为真,该运算符的结果就是真。 &&:两个表达式全为真,该运算符的结果才为真。 !:取得相反的结果。 非零的值表示都为真(TRUE),零表示为FALSE。

||和&&运算符,只有第一个参数能确定表达式的值,那么后一个参数将不会进行运算。因此表达式a&&5/a不会造成被零除。

C语言中的位移运算

左移:位向左边移动,左边的位直接截断,右边填0,左移几位就填几个0。 逻辑右移:与左移相反,左边填0,低位截断。 算术右移:低位截断,左边填充最高位的有效值。 几乎所有的编译器和机器组合都对有符号数使用算术右移,对于无符号数使用逻辑右移。 使用算术右移主要是面对有符号数,因为有符号数的最高位是符号位,如果右移后,高位进行填,那么可能一个负数右移之后会变成一个正数。 在Java中,为了区分逻辑右移和算术右移,用>>表示算术右移,>>>表示逻辑右移。

转载请注明原文地址: https://www.6miu.com/read-51045.html

最新回复(0)