第12章位运算讲课稿.pptVIP

  • 5
  • 0
  • 约6.94千字
  • 约 46页
  • 2019-09-06 发布于广东
  • 举报
12.3 位段 以前曾介绍过对内存中信息的存取一般以字节为单位。实际上,有时存储一个信息不必用一个或多个字节,例如,“真”或“假”用0或1表示,只需1位即可。在计算机用于过程控制、参数检测或数据通信领域时,控制信息往往只占一个字节中的一个或几个二进位,常常在一个字节中放几个信息。那么,怎样向一个字节中的一个或几个二进位赋值和改变它的值呢?可以用以下两种方法: (1) 可以人为地在一个字节data中设几项。例如:a、b、c、d分别占2位、6位、4位、4位(见图12.5)。如果想将c的值变为12(设c原来为0),可以这样:    图12.5 ① 将数12左移4位,使1100成为右面起第4~7位。 ② 将data与“12<<4” 进行“按位或” 运算,即可使c的值变成12。 如果c的原值不为0,应先使之为0。可以用下面方法: data=data 0177417 0177417的二进制表示为 11 11111 1 0000 1111 a b c d 也就是使第4~7位全为0,其他位全为1。它与data进行 运算,使第4~7位为0,其余各位保留data的原状。这个177417称为“屏蔽字”,即把c以外的信息屏蔽起来,不受影响,只使c改变为0。 但要找出和记住177417这个数比较麻烦。可以用data=data ~ (

文档评论(0)

1亿VIP精品文档

相关文档