当前位置: 首页 > news >正文

东营网站建设入门郑州网站推广流程

东营网站建设入门,郑州网站推广流程,wordpress移除评论,有关网站建设的参考书前言 (1)刷B站看到一个面试题,不用加减乘除计算两数之和。 (2)当时我看到这个题目,第一反应就是感觉这是一个数电题目。不过需要采用C语言的方式编写出来。 (3)不过看到大佬的代码之…

前言

(1)刷B站看到一个面试题,不用加减乘除计算两数之和。
(2)当时我看到这个题目,第一反应就是感觉这是一个数电题目。不过需要采用C语言的方式编写出来。
(3)不过看到大佬的代码之后,感觉自己的思想还是太局限了。

利用数电知识解题

(1)当时我看到这个题目,第一想法就是画出逻辑电路图,分析过程我就不赘述了。感兴趣的可以看【硬件科普】带你认识CPU第02期——CPU是怎么计算加法的(上)这个视频讲解

在这里插入图片描述

(2)根据上图,于是我们可以知道,需要一个当前值a和b,一个输入的进位值carry_bit。最终输出数据S和进位符号carry_bit。
注意:carry_bit是进位符号,所以他每次计算的时候,需要左移1位,否则他就是在上一位,最终输出的是一个错误数据。

#define get_bit(data,bit)  (data & (0x01 << bit))
#define AND(a,b,i)   (get_bit(a,i) & get_bit(b,i))
int ADD(int a,int b)
{int i,carry_bit=0,ret=0;for(i=0 ; i<16 ; i++){ret |= get_bit(a,i) ^ get_bit(b,i) ^ (carry_bit<<1); //计算本位值carry_bit = AND(a,b,i) | AND(a,carry_bit,i) | (get_bit(b,i) & (carry_bit<<1)); //计算进位值}return ret;
}

将上面代码精简

(1)这个是一个大佬的思路,与我们上面一样,建立一个本位和一个进位。不过这一次与上一次不一样的点在于,上一次每次都是一位一位的进行操作。而大佬是直接将本位的值利用异或运算一次性计算出来,进位值利用与运算保留。
(2)得到进位值之和,将进位制左移一位,再与上一次的本位进行异或运算,得到进位制。循环往复,最终直到进位制消失。

在这里插入图片描述

int ADD(int x,int y)
{while(y != 0)  //直到进位值消失{int tmp = x^y; //异或,计算出本位y = (x&y)<<1;  //与,计算出进位x = tmp;}
}
http://www.yayakq.cn/news/357838/

相关文章:

  • 新型网站建设如何选择做网站的公司
  • 网站建设合同审批六台阶客户管理软件
  • 进入外国网站的方法卸载wordpress主题
  • 做门户网站代码质量方面具体需要注意什么网站管理助手 建设中
  • 网站建设专用名词wordpress建什么站
  • 汽车网站网页模板wordpress访问次数插件
  • 建网站找哪个平台好呢上海市建设工程交易服务中心网站
  • 只选设计师的网站杭州做绒毛鉴定网站
  • 机关单位网站安全建设做商务网站公司
  • 网络公司做网站的合同响应式网站多少价格
  • 秦皇岛网站制作方案网站通知系统
  • 怎样给公司产品做网站免费电视剧在线观看网站
  • 福建省网站建设网页预览手机网站效果
  • 公司网站怎么做团工作网站建设意见
  • 手工木雕网站建设策划书设计师个人作品集模板
  • 常用的网站开发语言全球搜和外贸快车哪个好
  • 网站制作的前期主要是做好什么工作免费手机wap网站
  • 建立自己的网站有什么用做仿制网站
  • 高端网站开发免费网站开发源代码
  • 学php网站开发多钱婚庆网站开发
  • 网站建设任务书自己用电脑做网站服务器吗
  • 我图网类网站建设wordpress 访问
  • wdcp 网站打不开外贸网站建设制作教程
  • 深圳网站建设售后服务未来做哪些网站致富
  • 网站开发模版哈尔滨建设网站平台
  • 网站维护推广的方案企业文化墙创意设计图
  • 做网站公司能赚钱吗影视制作拍摄公司
  • 合肥如何做百度的网站开发流程图
  • 企业做网站维护江苏企业网站制作哪家好
  • 深圳网站推广外包网站怎么添加js广告位