1樓:匿名使用者
library ieee; --此程式是個人所編,還未經驗證
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned;
use ieee.std_logic_arith;
entity ss is
port( st:in std_logic;
shuru:in integer range 0 to 255;
shuchu:out std_logic_vector(7 downto 0) );
end ss;
architecture b of ss is
begin
process(st)
variable c:integer range 0 to 255;
variable d:integer range 0 to 255;
variable a:integer range 0 to 7;
begin
if st'event and st='1' then --st為轉換啟動訊號,上升沿啟動
shuchu<="00000000"; --對輸出初始化
c:=shuru; --儲存輸入
d:=shuru; --儲存輸入
a:=0;
while c/= 0 loop --c不等於零則迴圈,c等於零則退出迴圈
c:=c/2; --迴圈除2,類似於十進位制數轉化為二進位制數的方法
d:=d-(c*2); --算完後,d為計算出的每位二進位制數
shuchu(a)<=d; --把每為二進位制數安位給輸出
d:=c; --作為下次除2的被除數
a:=a+1;
end loop;
end if;
st<='0'; --控制訊號清零,等待下一次轉換的到來
end process;
end b;
2樓:我是小飛於
用譯碼器轉換阿
lz的二進位制是要8421碼還是什麼的
3樓:匿名使用者
樓上的程式是錯誤的,
shuchu(a)<=d;資料型別都不一樣,你怎麼賦值呢....
二進位制轉十進位制演算法,十進位制轉二進位制演算法
我們在網路上經常遇到要ip轉為二進位制來劃分或彙總子網,所以要找一種最快速的十進位制轉二進位制的方法 這種演算法用除16來算,基於我們對16以內的二進位制很熟悉 朋友你也許也奇怪,除16不是算16進製制轉換的嗎?呵呵,下面看來我說.我們用d表示10進製,用b表示2進製 公式是a d 16 b 餘c....
二進位制和十進位制的轉化,二進位制轉化為十進位制的方法?
我不能圓滿的你。給點我的想法吧!我覺得,如果按正確的轉化方法的話,那麼各類進製中,數的大小就都是統一的了 這句是你的原話。這句是沒錯的,不管按什麼方法轉化,他們的大小是不會變化的。但是,數的大小比較不是看他們的形式,不能因為one,和1不同就說他們是不一樣的。同樣也不能說10和10一樣就說他們是一樣...
二進位制小數如何轉化為十進位制,如,二進位制小數如何轉化為十進位制,如
毓人 0.101 2 1 2 0 2 1 2 10 0.5 0 2 1 2 10 0.5 2 1 2 10 0.25 1 2 10 1.25 2 10 0.625 10 生活如歌 0.101b 2 1 2 3 0.625 二m進製數與z十s進製數如何轉換 3 二v進製數 十l進製數 對於j較小j的二...