这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 综合技术 » 基础知识 » 各位朋友,请问用C语言如何实现如下位操作。

共3条 1/1 1 跳转至

各位朋友,请问用C语言如何实现如下位操作。

院士
2006-09-17 18:14:16     打赏
各位朋友,请问用C语言如何实现如下位操作。



关键词: 各位     朋友     请问     语言     如何     实现     下位     操作    

院士
2006-12-22 22:43:00     打赏
2楼
问 将TEMP的.6放进PORTD.7中,要求PORTD.0-PORTD.6不变。 1: 肯定行的  if(TEMP&0X40) TEMP|=0X80;
   else   TEMP&=0X7FF;
2: 上面朋友我的意思是PORTD.7<-TEMP.6,不知如何操作? 3: 这样if(TEMP&0x40) PORTD |= 0x80;
else PORTD &= 0x7F;  4: 谢谢上面两位朋友,不用if语句能否实现,用汇编好象会简单点。 5: 这个当然 6: 用汇编你自己用寄存器传参数,更麻烦。temp2=temp&0b00100000;
temp2=(!!(temp2))<<7;
PORTD&=0b01111111;
PORTD|=temp2;

我没跑哈,自己试一下。
7: 上面写麻烦了,不想改了,重新给一个:temp1=temp;//如果不要TEMP里的数据了,可以不要这个TEMP1
temp1&=0b00100000;//取出TEMP.6
temp1=temp1<<1;//弄到第7位去
PORTD&=0b10111111;//上面写错了,不好意思!
PORTD|=temp1;//怎么样?过去了吧。

这个一样没跑过哈,自己验证一下。

高工
2022-08-27 15:28:49     打赏
3楼

了解一下


共3条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]