CSP初赛-进制及位运算与指针专题

日期
Aug 10, 2023
标签
CSP
状态

进制

  1. 进制转换
    1. 十进制转n进制(整数小数分开计算)
      1. 整数部分:除n倒取余
      2. 小数部分:乘n正取整
    2. 二进制转八进制(每三位划一位)
      1. 每三位划一位(从小数点开始),例如:10|101|010|.|101|
      2. 拆开转换,例如:2|5|2|.|5|
    3. 二进制转十六进制(每四位$2$划一位${16}$)
      1. 每四位划一位(从小数点开始),例如:|1010|1010|.|101
      2. 拆开转换,例如:|a|a|.|a|
    4. x进制转十进制
      1. 例如:10101010.101(2进制)

位运算与指针

  1. 位运算
    1. 转为二进制,右对齐
    2. 按位与(&)
      1. 1 & 0 = 0
      2. 0 & 1 = 0
      3. 1 & 1 = 1
      4. 0 & 0 = 0
    3. 按位或(|)
      1. 1 | 0 = 1
      2. 0 | 1 = 1
      3. 1 | 1 = 1
      4. 0 | 0 = 0
    4. 按位异或(^)
      1. 1 ^ 0 = 1
      2. 0 ^ 1 = 1
      3. 0 ^ 0 = 0
      4. 1 ^ 1 = 0
    5. 按位取反(~)
      1. ~1 = 0
      2. ~0 = 1
    6. 左移(<<)
    7. 右移(>>)
  1. 原码、补码和反码
    1. 原码(等于值的二进制,共8位,用0补足,第8位是符号位(0为正数,1为负数))
    2. 反码(正数时,等于原码;负数时,等于原码按位取反,符号位不变)
    3. 补码(正数时,等于反码;负数时,等于反码加一)
  1. 指针
    1. 内存中每个单元被赋予的唯一序号,称作“地址”
    2. 存放地址所用的变量被叫做“指针变量”,简称“指针”
    3.