20155317 十六周second 取值

Posted wxwddp

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了20155317 十六周second 取值相关的知识,希望对你有一定的参考价值。

20155317 十六周second 取值

minutes

技术分享图片

minutesset
#define base 0xFFFFC0000 #

#define &clock base+2

void setsecond(int second)

{

clock = clock&~(0x1F);//将0-4位清零
clock = clock|(second)//将值进行合并

 }

 

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

minutesget
#define base 0xFFFFC0000 #

#define &clock base+2

int getsecond(int second)

{

second = clock &(0x1F);//取值

return second;

}

 

在get的过程中,我们需要将除了second以外的部分清零,在这里直接与0000000000011111与运算,剩下的正好是我们需要的值。

 

以上是关于20155317 十六周second 取值的主要内容,如果未能解决你的问题,请参考以下文章

每周进度条(第十六周)

第十六周学习进度表

软件工程--第十六周学习进度

学习进度条(十六周)

第十六周学习进度

第十六周学习进度