第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

請問如何解決10進(jìn)制直接與二進(jìn)制相成乘的問題?

請問如何解決10進(jìn)制直接與二進(jìn)制相成乘的問題?

叮當(dāng)貓咪 2023-04-08 14:10:18
首先我定義signal DUTY:std_logic_vector(7 downto 0);為8進(jìn)制信號,想實現(xiàn)以下功能擴(kuò)大1.6倍,DUTY<=16/10*DUTY;但是這樣表達(dá)會出現(xiàn)以下錯誤提示,請問如何解決10進(jìn)制直接與二進(jìn)制相成乘的問題?補充:我已添加數(shù)學(xué)運算庫文件use ieee.std_logic_arith.all;錯誤提示如下:Error (10327): VHDL error at dds1.vhd(49): can't determine definition of operator ""*"" -- found 0 possible definitions除法也有同樣的問題:Error (10327): VHDL error at dds1.vhd(49): can't determine definition of operator ""/"" -- found 0 possible definitions
查看完整描述

2 回答

?
縹緲止盈

TA貢獻(xiàn)2041條經(jīng)驗 獲得超4個贊

會產(chǎn)生小數(shù)誒,沒有這樣乘的,你把小數(shù)再傳遞給DUTY的話,就不是(7 downto 0)這個范圍了。要么你就把DUTY定義為整數(shù)類型,計算后再轉(zhuǎn)換成二進(jìn)制。

查看完整回答
反對 回復(fù) 2023-04-11
?
阿波羅的戰(zhàn)車

TA貢獻(xiàn)1862條經(jīng)驗 獲得超6個贊

VHDL里頭不能直接使用乘號除號,必須自己寫乘法器或者用現(xiàn)成的乘法器。另外你這個有溢出問題,這個問題你自己想辦法吧,關(guān)于擴(kuò)大1.6倍我可以給你個建議,就是用移位和加法來實現(xiàn)。
1.6 約等于 1 + 1/2 + 1/8 - 1/32
通過右移位得到各個數(shù)字,然后相加就可以了
這里DUTY一共才8位,所以1/32那一項可以不要了。就是要也會由于精度不夠?qū)е逻@一項一直是0.

查看完整回答
反對 回復(fù) 2023-04-11
  • 2 回答
  • 0 關(guān)注
  • 190 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號