在二進(jìn)制和十進(jìn)制的處理中,有時(shí)候一些小技巧是很有用的。
1、把十進(jìn)制數(shù)轉(zhuǎn)換成二進(jìn)制數(shù)
(1)在MATLAB中有一個(gè)函數(shù)dec2bin,可以把正整數(shù)轉(zhuǎn)換為2進(jìn)制
(2)對(duì)于負(fù)數(shù)有這樣一個(gè)結(jié)論:N位二進(jìn)制負(fù)數(shù)X的補(bǔ)碼對(duì)應(yīng)的無符號(hào)數(shù)為2N+X
例:有符號(hào)原碼:1001 十進(jìn)制為:-1
反碼:1110
補(bǔ)碼:1111 無符號(hào)數(shù)為:15
15 = 24 + (-1);
這樣就可以快速的知道用4位二進(jìn)制表示的-5的補(bǔ)碼的無符號(hào)數(shù)為16-5=11即1011
2、把負(fù)數(shù)二進(jìn)制補(bǔ)碼轉(zhuǎn)換成十進(jìn)制
(1)把符號(hào)位去掉,再把剩余位取反加一,得到的數(shù)就是負(fù)數(shù)的二進(jìn)制補(bǔ)碼的絕對(duì)值。
(2)直接把二進(jìn)制補(bǔ)碼取反加一;
(3)1011 (-1)*23+0*22+1*21+1*20= -5
問題:
=============================================
=============================================
1、用補(bǔ)碼表示的二進(jìn)制,正數(shù)轉(zhuǎn)負(fù)數(shù),負(fù)數(shù)轉(zhuǎn)正數(shù)都是取反加一。
2、兩個(gè)數(shù)相加位寬會(huì)增加,所以要擴(kuò)展符號(hào)位:
regdin_cho1_i[15:0];regdin_cho2_i[15:0];regdin_cho1_o2_i[16:0];always@(posedgeclk)begindin_cho1_o2_i<=?{din_cho1_i?[15],din_cho1_i?}?+?{din_cho2_i[15],din_cho2_i?};?end
3、截位處理,可以截高位,但一定要保留符號(hào)位
always@(posedge clk)begindout_i <= {din_cho1_o2_i [16],din_cho1_o2_i [14:0]};end
4、四舍五入
dout_i <= din_cho1_o2_i [16:1] + din_cho1_o2_i [0];
沒有四舍五入,可能會(huì)帶來很多直流信號(hào)。
-
二進(jìn)制
+關(guān)注
關(guān)注
2文章
796瀏覽量
41761
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
二進(jìn)制相對(duì)調(diào)相(二進(jìn)制差分調(diào)相2DPSK)的工作原理
![<b class='flag-5'>二進(jìn)制</b>相對(duì)調(diào)相(<b class='flag-5'>二進(jìn)制</b>差分調(diào)相2DPSK)的工作原理](https://file1.elecfans.com//web2/M00/A4/6C/wKgZomUMNCaAJPaQAADMOGqmdHg823.jpg)
二進(jìn)制
![<b class='flag-5'>二進(jìn)制</b>](https://file1.elecfans.com//web2/M00/A4/B5/wKgZomUMNVyAdVirAAASM9n2nZE370.gif)
二進(jìn)制編碼和二進(jìn)制數(shù)據(jù)
什么是二進(jìn)制計(jì)數(shù)器,二進(jìn)制計(jì)數(shù)器原理是什么?
二進(jìn)制電平,什么是二進(jìn)制電平
十進(jìn)制數(shù)的二進(jìn)制編碼
LabVIEW的寫入二進(jìn)制文件
![LabVIEW的寫入<b class='flag-5'>二進(jìn)制</b>文件](https://file1.elecfans.com//web2/M00/A5/E8/wKgZomUMOryAEJ8DAAAStTHsY5o291.gif)
二進(jìn)制加法程序【匯編版】
浮點(diǎn)數(shù)轉(zhuǎn)換為二進(jìn)制存儲(chǔ)
![浮點(diǎn)數(shù)轉(zhuǎn)換為<b class='flag-5'>二進(jìn)制</b>存儲(chǔ)](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
二進(jìn)制數(shù)據(jù)及取值范圍的計(jì)算方法
![<b class='flag-5'>二進(jìn)制</b>數(shù)據(jù)及取值范圍的計(jì)算方法](https://file1.elecfans.com/web2/M00/AD/0C/wKgaomVLPSKAMjHEAAIUrMjf48Y373.png)
評(píng)論