单片机中比较有符号数和无符号数


  前提:2个数的位数是相同的,如都是8位或16位数。

         第一步:先判断2个数是否相等。

   第二步:再判断2个数的符号。 如果是一正一负,则正数大。

        第三步:如果符号相同,不要再分为同负比较或同正比较。直接全部当作无符号来比较,大的为大数。

                      同为负数的情况下,不要转换为正数,然后比较正数大小,再倒转为正数大的反而小。

       举例: -66 = 0xBE,-67=0xBD;    0xBE = 190,0xBD=189, 0XBE>0XBD.

                 如果2个比较的数位数不同,如其中一个为16位数,-66 = 0xFFBE, 0xFFBE = 65470 > 190. 判断会出错。

      


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM