博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

20155217 《信息安全系统设计基础》week16课堂测试

Posted on 2018-01-03 10:22  20155217杨笛  阅读(117)  评论(0编辑  收藏  举报

20155217 《信息安全系统设计基础》week16课堂测试

在作业本上完成附图作业,要认真看题目要求并提交作业截图。

  • 在set的过程中,我们需要将hour部分进行赋值,赋值我们采用“先清零”再“或运算”的方式,先和1111111111100000进行运算,将0-4位清零,其他位保证不变,再与hour进行“或运算”,最终就成功将hour加入时间变量里面。

  • void SetHours(int hours)

#define base 0xFFFFC0000 
#define &clock base+2
void SetHours(int hours)
{
clock = clock&~(0x1F);
clock = clock|(hour);
 }
  • 在get的过程中,我们需要将除了hour以外的部分清零,所以先将hour右移11位,即0000000000011111与0X1F作“与运算”,剩下的正好是我们需要的值。
#define base 0xFFFFC0000 

#define &clock base+2

int getHours(int hour)

{

second = clock &(0x1F);

return hour;

}