verilog radix轉(zhuǎn)換輔助腳本

前言

這里使用python腳本,簡單實現(xiàn)一些verilog描述中,數(shù)字在使用不同進制表示之間的轉(zhuǎn)換,比如說10進制的5000000,經(jīng)過dtb(5000000)就可以可以直接得到返回結(jié)果23'b10011000100101101000000

代碼

1. dtb( )
  • 當輸入的十進制整數(shù)大于等于0時,默認返回其無符號二進制數(shù)表示,如果需要該整數(shù)的有符號數(shù)表示,可以直接在最高位前加一個符號位0.
  • 當輸入的十進制整數(shù)小于0時,返回負數(shù)的有符號二進制數(shù)表示
def dtb(decimal):
    '''decimal -> binary radix expression, if decimal>=0 return unsigned binary value,
    or decimal < 0 print signed binary value; that is, if you want a signed decimal>=0
    data, add a 0 forward printed data MSB as sign bit.'''
    a = 0
    b = 0
    a = len(bin(decimal)) - 2
    b = bin(decimal)
    if(decimal >= 0):
        print str(a)+'\'b'+str(b[2:])
    else:
        print str(a-1)+'\'b'+str(b[3:])

測試

radix3.PNG
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容