#coding = utf-8
'''created on 2023年5月28日
二進位制、八進位制、十進位制、十六進製制之間進行相互轉換
'''class nsc():
hex_num=
num_hex=
'''二進位制轉十進位制'''
def bin2dec(self,num):
#根據二進位制的位數來計算
result=0
for i in str(num):
result=result*2+int(i)
return result
'''二進位制轉八進位制'''
def bin2oct(self,num):
result = ''
temp=list(str(num))
insert=3-len(temp)%3
while insert and insert !=3:
temp.insert(0, 0)
insert-=1
while temp:
result=str(int(temp.pop())*1+int(temp.pop())*2+int(temp.pop())*4)+result
return int(result)
'''二進位制轉十六進製制'''
def bin2hex(self,num):
result = ''
temp=list(str(num))
insert=4-len(temp)%4
while insert and insert!=4:
insert-=1
temp.insert(0, 0)
while temp:
#todo 格式化輸出
x=int(temp.pop())*1+int(temp.pop())*2+int(temp.pop())*4+int(temp.pop())*8
result=self.hex_num[x]+result
return result
'''十進位制轉二進位制'''
def dec2bin(self,num):
#除2取餘,逆序排列
result=''
temp=
while num:
num=num//2
while temp:
result+=str(temp.pop())
return int(result)
'''十進位制轉八進位制'''
def dec2oct(self,num):
return self.bin2oct(self.dec2bin(num))
'''十進位制轉十六進製制'''
def dec2hex(self,num):
return self.bin2hex(self.dec2bin(num))
'''十六進製制轉二進位制'''
def hex2bin(self,num):
hex_n=list(str(num))
result=''
for i in hex_n:
result+=str(self.dec2bin(self.num_hex[i]))
return result
'''十六進製制轉八進位制'''
def hex2oct(self,num):
return self.bin2oct(self.hex2bin(num))
'''十六進製制轉十進位制'''
def hex2dec(self,num):
return self.bin2dec(self.hex2bin(num))
if __name__=='__main__':
nc=nsc()
print(nc.hex2dec('fffee'))
二進位制 八進位制 八進位制 十進位制 十六進製制的介紹
數字在計算機中表現的方式常見的有四種 十進位制 二進位制 八進位制 十六進製制 1.十進位制 1 基數 0,1,2,3,4,5,6,7,8,9 2 進製 逢10進1 3 位權 10的n次方 n從低位到高位從0開始一次增加 1231 110 3 210 2 310 1 110 0 4 程式中的表示方式...
二進位制 八進位制 十進位制 十六進製制
進製 位置計數法是一種記數方式,故亦稱進製記數法 位值計數法,可以用有限的數字符號代表所有的數值。可使用數字符號的數目稱為基數 en radix 或底數,基數為n,即可稱n進製,簡稱n進製。現在最常用的是十進位制,通常使用10個阿拉伯數字0 9進行記數。對於任何乙個數,我們可以用不同的進製來表示。比...
二進位制 八進位制 十進位制 十六進製制
制也就是進製位,對於接觸過電腦的人來說應該都不陌生,我們常用的進製包括 二進位制 八進位制 十進位制與十六進製制,它們之間區別在於數運算時是逢幾進一位。比如二進位制是逢2進一位,十進位制也就是我們常用的0 9是逢10進一位。第一 十進位制轉二進位制 十進位制數除2取餘法,即十進位制數除2,餘數為權位...