tag 标签: 原码

相关博文
  • 热度 26
    2016-6-18 15:43
    8689 次阅读|
    0 个评论
    1.补码的计算方式第一种是原码取反+1,第二种是模-原码,这是两种等效的方法,下面简单理解式的证明一下两种方法等效 以一个字节8位举例。假设原码为1001 0110,取反0110 1001,把原码补码得10001 0110 + 0110 1001 = 1111 1111, 也就是说,反码(1001 0110)=8位最大数(1111 1111)- 原码(1001 0110)。 根据第一中取补码的定义: 补码=反码+1     =8位最大数(1111 1111)-原码(1001 0110)+ 1     =8位最大数 - 原码(1001 0110)     =1 0000 0000 - 原码(1001 0110) 1 0000 0000即是8位的模256,即第一种求补效果等于第二种求补效果   2. 二进制减法,利用减一个数等于加上这个数的补码原理,现在把这个原理简单理解式证明一下这个原理 首先,我们都是在8位之内计算,高于八位数不影像低8位,在低8位范围内可以认为  0000 0000 = 1 0000 0000, 假设被减数(1101 0101),减数(1001 0110)及其补码 差 = 被减数(1101 0101)- 减数(1001 0110)    = 被减数(1101 0101)- 减数(1001 0110)+ 1 0000 0000 ;    = 被减数(1101 0101)+    = 被减数(1101 0101)+ 补码(0110 1010)  也就是减一个数等于加上一个数的补码   3.关于正负数之间的加减法,也是减去一个数等于加上这个数的补码,   计算机并不认识正负,正负是人为的定义,相关资料网上颇多,不再赘述。   4. 计算两个数之差的一种物理意义,    假设数组引用变量i,j是两位二进制数,取值范围00 01 10 11    当i,j到11后,自动变为00(wrap方式),j - i = ?     j(11) - i(01) = 10  没有发生借位    j(00) - i(01) = 11=-1, 发生借位    规律:两数相减,不考虑正负,差表示j先与i多遍历了几个元素,          并且最大差值是两个数位数能表示的最大值。         这个负号,表示从i,j方向的反方向,从i到j需要遍历几个元素,         11,不看成补码,形式则表示从i-j顺方向为3,也就是从小到大,再从最大返回最小方式          11,看成补码,则表示从i-j的反向经历1个元素,即从大到小再返回大,11是-1的补码。        
  • 热度 32
    2016-5-12 20:11
    1732 次阅读|
    0 个评论
             了解一下状态机中"状态"的各种编码,我们都知道每一个状态需要一个二进制表示,但是状态之间的关系如何,到底该选用"原码""Gray码""独热码"还是好多好多别的码呢.....^^          下面是我自己搜集一些相关信息结合资料书整理的,想深入了解的可以查资料...恩推荐用(需要VPN)Google,维基百科,当然可以百度,Bing...虽然最近度娘口碑差点,仔细找找还是有好多好资料的 先来熟悉一下各种码(至于实际实现效果,自己找个例程验证一下就行了)   原码:最简单的码,就是对每个状态依照二进制按照顺序依次编码(00,01,10,11.............)         顺序二进制编码,即将状态依次编码为顺序的二进制数。顺序二进制编码是最紧密的编码,优点在于它使用的状态向量位数最少,节约了逻辑资源   Gray码:我么都应该知道的哦(数电中卡诺图的化简...不了解的回去翻书),两个顺序状态之间的差别只有一位不同(00.01,11.10..............)          Gray码在发生状态跳转时,状态向量只有一位发生变化。理论上说 Gray状态机在状态跳转时不会有任何毛刺,但Gray码状态机设计中最大的问题是,在状态机很复杂状态跳转的分支很多时,要合理的分配状态编码保证每个状态跳转都仅有 1 位发生变化,你的数电功底一定要好............   独热码:每个状态只有一个比特是高电平"1"(0001,0010,0100,1000..........)了解?!         因为独热码的特性会多用了触发器,但所用组合电路可省一些,因而使电路的速度和可靠性有显著提高,而总的单元数并无显著增加。同时独热码在状态跃迁时仅需要改变状态变量的某一位,在一定程度上简化了比较逻辑,从而减少了毛刺产生的概率   总结         原码和格雷码是压缩状态编码。 若使用格雷编码,则相邻状态转换时只有一个状态位发生翻转,这样不仅能消除状态转换时由多条状态信号线的传输延迟所造成的毛刺,又可以降低功耗。二进制编码、格雷码编码使用最少的触发器,消耗较多的组合逻辑,而独热码编码反之。         独热码编码的最大优势在于状态比较时仅仅需要比较一个位,一定程度上简化了比较逻辑,减少了毛刺产生的概率.当然在需要表示同样的状态数时,独热编码占用较多的位,也就是消耗较多的触发器,但这些额外触发器占用的面积可与译码电路省下来的面积相抵消。还有由于独热码的状态译码简单,可减少组合逻辑且速度较快, 这种编码方式还易于修改,增加状态或改变状态转换条件都可以在不影响状态机的其它部分的情况下很方便地实现。           恩...看着独热码介绍篇幅最多,那么一定在状态设计中就是用独热码吗?实际上,相对于实际设计中,大型设计(状态要几十+吧...就这么定义,虽然很少见)独热码更有效,而一些小型设计中(我们常用的工程中)使用原码和格雷码更有效! 而相对于原码,就面积与速度的折中考虑来说Gray码是最好的选择,至于撒都不考虑了,图方便还是原码好用~~~         最后,我感觉自己说了一大堆没营养的话==不过像我这样比较懒的搜索的人,希望能有所帮助
相关资源
  • 所需E币: 0
    时间: 2021-4-27 18:25
    大小: 92.72KB
    上传者: Argent
    AI产品层出不穷,手里收藏了有关电子通信,毕业设计等资料,方案诸多,可实施性强。单片机的应用开发,外设的综合运用,纵使智能产品设计多么复杂,但其实现的基本功能都离不开MCU的电路设计与驱动编程,无论是使用51单片机还是AVR单片机,其方案的选择因项目需求而定,需要这方面资料的工程师们,看过来吧。
  • 所需E币: 3
    时间: 2019-12-26 01:38
    大小: 288.18KB
    上传者: wsu_w_hotmail.com
    串口uart的vhdl,verilog,lattic实现原码……
  • 所需E币: 3
    时间: 2019-12-26 01:13
    大小: 78.51KB
    上传者: givh79_163.com
    计算机图形学部分算法vc原码……
  • 所需E币: 4
    时间: 2020-1-16 14:22
    大小: 49.21KB
    上传者: 二不过三
    c实用培训原码,c实用培训原码……
  • 所需E币: 5
    时间: 2020-1-16 14:35
    大小: 667.55KB
    上传者: quw431979_163.com
    mtd原码OOB:outofband,某些内存技术支持out-of-band数据――例如,NANDflash每512字节的LinuxMTD源代码分析byJimZeusVersion0.12002/4/29Copyright2002JimZeus.Permissionisgrantedtocopy,distributeand/ormodifythisdocumentunderthetermsoftheGNUFreeDocumentationLicense,Version1.1oranylaterversionpublishedbytheFreeSoftwareFoundation;withnoInvariantSections,withnoFront-CoverTexts,andwithnoBack-CoverTexts.Acopyofthelicenseisincludedinthesectionentitled"GNUFreeDocumentationLicense".file:///C|/Documents%20and%20Settings/bob/Local%20Settings/Temp/wzf966/Your-MTD.htm(第1/116页)2007-5-1115:22:32OOB:outofband,某些内存技术支持out-of-band数据――例如,NANDflash每512字节的IfyougotanyProblem,Suggestion,AdviceorQuestion,Pleasemailto:jimzeus@sina.com.cnAnycorrection……