二進位制和十進位制的轉換 分別用python和js實現

2022-03-05 11:24:20 字數 1344 閱讀 2506

js實現:

// 進製轉換.js 檔案內容

function ten_to_two(argument);

};li.reverse();

return li.join(''

);}

import execjs

with open(

'進製轉換.js

', '

r') as

f: js =f.read()

fun =execjs.compile(js)

ret = fun.call('

ten_to_two

', 12

)print(ret)

python實現

# 二進位制小數轉化成十進位制小數

# 0.1111 = 2**(-1) + 2**(-2) + 2**(-3) + 2**(-4

)def two_to_ten(num):

ret = 0

for i in range(1, len(str(num))-1

): ret += 2**(-i)

return

ret# 十進位制小數轉化為二進位制

# 0.9375

def ten_to_two(num):

ret = ['0.'

]

for i in range(100

): num *= 2

int(num)))

num -= int

(num)

if num == 0

:

break

return

''.join(ret)

# print(two_to_ten(

0.1111

))print(ten_to_two(

0.9375

))# 十進位制數轉換為二進位制採用 除2取餘, 逆序排列的方式

# 數字 ÷2餘數

# 1020

# 521

# 220

# 121

# 0# 所以10的二進位制表示就是

1010

def int_ten_two(num):

li =

a =true

while

a: a,b = divmod(num, 2

) print(a,b)

num =a

return

''.join(li[::-1

])print(int_ten_two(

10))

十進位制二進位制轉換

一 整形裝換成兩個位元組 int value 456 unsigned char byte1 value 0xff00 8 高8位 unsigned char byte2 value 0xff 低8位 nslog byte1 x byte2 x byte1,byte2 byte1 1 byte2 c...

十進位制二進位制轉換

1.十進位制轉二進位制 正整數轉二進位制 除二取餘,然後倒序排列,高位補零 負整數轉二進位制 先是將對應的正整數轉換成二進位制後,對二進位製取反,然後對結果再加一。小數轉換二進位制 對小數點以後的數乘以2,取結果的整數部分 不是1就是0嘍 然後再用小數部分再乘以2,再取結果的整數部分 以此類推,直到...

十進位制二進位制轉換

二進位制轉十進位制 二進位制的1101轉化成十進位制 1101 2 1 2o 0 21 1 22 1 23 1 0 4 8 13 轉化成十進位制要從右到左用二進位制的每個數去乘以2的相應次方 不過次方要從0開始 相反 用十進位制的數除以2 每除一下將餘數就記在旁邊 最後按餘數從下向上排列就可得到11...