最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

linux下如何進(jìn)制的相互轉(zhuǎn)換

 更新時(shí)間:2024年11月29日 14:23:59   作者:零時(shí)搞學(xué)習(xí)  
文章介紹了Linux Shell和Python中不同進(jìn)制(二進(jìn)制、八進(jìn)制、十進(jìn)制、十六進(jìn)制)的轉(zhuǎn)換方法,包括前綴和轉(zhuǎn)換工具的使用

linux下進(jìn)制的相互轉(zhuǎn)換

linux下十六進(jìn)制,十進(jìn)制,八進(jìn)制,二進(jìn)制的相互轉(zhuǎn)換

不同進(jìn)制的特殊符號

如下:

  • 二進(jìn)制:數(shù)字前綴為0b0B,字符集為01。
  • 八進(jìn)制:數(shù)字前綴為0o(零),字符集為07。
  • 十進(jìn)制:沒有數(shù)字前綴,字符集為09。
  • 十六進(jìn)制:數(shù)字前綴為0x0X,字符集為09AF(大小寫都可以)。

下面是一些示例:

  • 二進(jìn)制數(shù)字1101可以表示為0b11010B1101。
  • 八進(jìn)制數(shù)字16可以表示為0200o20,其中前綴0表示它是一個(gè)八進(jìn)制數(shù)字。
  • 十進(jìn)制數(shù)字42不需要前綴。
  • 十六進(jìn)制數(shù)字1A可以表示為0x1A0X1a

需要注意的是:

  • 在編寫程序時(shí),應(yīng)在數(shù)字前加上正確的前綴,以明確數(shù)字的進(jìn)制。
  • 否則,計(jì)算機(jī)可能會將它們解釋為不同進(jìn)制的數(shù)字。

在linux shell上進(jìn)行進(jìn)制轉(zhuǎn)換

各進(jìn)制轉(zhuǎn)10進(jìn)制:

方法一:echo $((現(xiàn)在的進(jìn)制#原始值))

#2進(jìn)制數(shù)轉(zhuǎn)10進(jìn)制數(shù)
root@unassigned:/# echo $((2#1011))
11
#8進(jìn)制數(shù)轉(zhuǎn)10進(jìn)制數(shù)
root@unassigned:/# echo $((8#13))
11
#16進(jìn)制數(shù)轉(zhuǎn)10進(jìn)制數(shù)
root@unassigned:/# echo $((16#B))
11

方法二:echo ‘ibase=現(xiàn)在的進(jìn)制;原始值’ | bc

#8進(jìn)制數(shù)轉(zhuǎn)10進(jìn)制數(shù)
root@unassigned:~/test# echo 'ibase=8;120' | bc
80
#16進(jìn)制數(shù)轉(zhuǎn)10進(jìn)制數(shù)
root@unassigned:~/test# echo 'ibase=16;50' | bc
80
#2進(jìn)制數(shù)轉(zhuǎn)10進(jìn)制數(shù)
root@unassigned:~/test# echo 'ibase=2;1010000' | bc
80

進(jìn)階

利用bc實(shí)現(xiàn)各進(jìn)制相互轉(zhuǎn)換

echo “obase=目標(biāo)進(jìn)制; ibase=原始進(jìn)制; $((原始值))” | bc

#十進(jìn)制值轉(zhuǎn)換為八進(jìn)制
root@unassigned:~/test# echo "obase=8; ibase=10; $((120))" | bc
170
#十進(jìn)制轉(zhuǎn)換為十六進(jìn)制
root@unassigned:~/test# echo "obase=16; ibase=10; $((120))" | bc
78
#十進(jìn)制轉(zhuǎn)換為二進(jìn)制
root@unassigned:~/test# echo "obase=2; ibase=10; $((120))" | bc
1111000

#八進(jìn)制轉(zhuǎn)換為二進(jìn)制
root@unassigned:~/test# echo "obase=2; ibase=8; $((170))" | bc
1111000
#八進(jìn)制轉(zhuǎn)換為十進(jìn)制
root@unassigned:~/test# echo "obase=10; ibase=8; $((170))" | bc
120
#八進(jìn)制轉(zhuǎn)換為十六進(jìn)制
root@unassigned:~/test# echo "obase=16; ibase=8; $((170))" | bc
78

#二進(jìn)制轉(zhuǎn)換為八進(jìn)制
root@unassigned:~/test# echo "obase=8; ibase=2; $((1111000))" | bc
170
#二進(jìn)制轉(zhuǎn)換為十進(jìn)制
root@unassigned:~/test# echo "obase=10; ibase=2; $((1111000))" | bc
120
#二進(jìn)制轉(zhuǎn)換為十六進(jìn)制
root@unassigned:~/test# echo "obase=16; ibase=2; $((1111000))" | bc
78

#十六進(jìn)制轉(zhuǎn)換為二進(jìn)制
root@unassigned:~/test# echo "obase=2; ibase=16; $((78))" | bc
1111000
#十六進(jìn)制轉(zhuǎn)換為八進(jìn)制
root@unassigned:~/test# echo "obase=8; ibase=16; $((78))" | bc
170
#十六進(jìn)制轉(zhuǎn)換為十進(jìn)制
root@unassigned:~/test# echo "obase=10; ibase=16; $((78))" | bc
120

以上簡單介紹了shell下的進(jìn)制轉(zhuǎn)換,下面再講一下Python中的進(jìn)制轉(zhuǎn)換:

在python3中有以下進(jìn)制轉(zhuǎn)換的方式,分別對應(yīng)不同的進(jìn)制

十六進(jìn)制hex(),十進(jìn)制int(),八進(jìn)制oct(),二進(jìn)制bin()

值得注意的是,python更加靈活,其值也需要用對應(yīng)的前綴進(jìn)行辨別

比如:

  • 十六進(jìn)制數(shù):0xAA
  • 十進(jìn)制數(shù):10
  • 八進(jìn)制數(shù):0o20
  • 二進(jìn)制數(shù):0b110

以上四種進(jìn)制,除了十進(jìn)制無前綴,其余進(jìn)制均有其前綴進(jìn)行辨別,如0x,0o,0b

轉(zhuǎn)換效果展示:

>>> hex(120)
'0x78'
>>> hex(0o170)
'0x78'
>>> hex(0b1111000)
'0x78'
>>> int(0x78)
120
>>> oct(0x78)
'0o170'
>>> bin(0x78)
'0b1111000'

就不完全一一列舉了,以上就是linux shell下和python3下對進(jìn)制的轉(zhuǎn)換方法。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • ubuntu下安裝程序的三種方法總結(jié)(推薦)

    ubuntu下安裝程序的三種方法總結(jié)(推薦)

    下面小編就為大家?guī)硪黄猽buntu下安裝程序的三種方法總結(jié)(推薦)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-12-12
  • Canonical通過Flutter啟用Linux桌面應(yīng)用程序(推薦)

    Canonical通過Flutter啟用Linux桌面應(yīng)用程序(推薦)

    這篇文章主要介紹了Canonical通過Flutter啟用Linux桌面應(yīng)用程序,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-07-07
  • Linux下網(wǎng)絡(luò)接口重命名方式

    Linux下網(wǎng)絡(luò)接口重命名方式

    本文詳細(xì)介紹了現(xiàn)代Linux系統(tǒng)中網(wǎng)絡(luò)接口命名的變化,包括從傳統(tǒng)的eth0到可預(yù)測的eno1、enp0s3、ens33等命名方案,文章還探討了自定義網(wǎng)絡(luò)接口名稱的必要性及常見方法,如通過GRUB內(nèi)核參數(shù)方式和udev規(guī)則自定義命名,此外,還提供了詳細(xì)的步驟和最佳實(shí)踐建議
    2026-03-03
  • Linux 下載安裝VSCode 使用編程輸出當(dāng)前時(shí)間的方法

    Linux 下載安裝VSCode 使用編程輸出當(dāng)前時(shí)間的方法

    這篇文章主要介紹了Linux 下載安裝VSCode 使用編程輸出當(dāng)前時(shí)間,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-06-06
  • linux lvm快照的正確mount掛載實(shí)現(xiàn)方式

    linux lvm快照的正確mount掛載實(shí)現(xiàn)方式

    這篇文章主要介紹了linux lvm快照的正確mount掛載實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2025-05-05
  • 使用命令行檢測Ubuntu版本方法

    使用命令行檢測Ubuntu版本方法

    在本篇文章中小編給大家整理了關(guān)于使用命令行檢測Ubuntu版本方法和相關(guān)代碼,有興趣的朋友們學(xué)習(xí)下。
    2019-03-03
  • expect命令在linux下實(shí)現(xiàn)批量ssh免密

    expect命令在linux下實(shí)現(xiàn)批量ssh免密

    本次文章主要給大家講解了在linux系統(tǒng)下用expect命令實(shí)現(xiàn)批量ssh免密的實(shí)現(xiàn)方法,以及實(shí)際代碼分享。
    2017-11-11
  • 使用htaccess規(guī)范化網(wǎng)址的配置

    使用htaccess規(guī)范化網(wǎng)址的配置

    使用htaccess規(guī)范化網(wǎng)址,提高程序的運(yùn)行效率。
    2010-02-02
  • CentOS7增加Swap空間的兩種方法

    CentOS7增加Swap空間的兩種方法

    當(dāng)服務(wù)器物理內(nèi)存不足時(shí),增加Swap空間可以作為虛擬內(nèi)存使用,幫助系統(tǒng)處理內(nèi)存壓力,本文給大家介紹了CentOS7增加Swap空間的兩種方法:創(chuàng)建新的Swap文件和調(diào)整Swap分區(qū)大小,需要的朋友可以參考下
    2025-05-05
  • Ubuntu18.04一次性升級Python所有庫的方法步驟

    Ubuntu18.04一次性升級Python所有庫的方法步驟

    這篇文章主要介紹了Ubuntu18.04一次性升級Python所有庫的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01

最新評論

南充市| 剑川县| 绵阳市| 玉树县| 文昌市| 芦溪县| 桂林市| 聂荣县| 德阳市| 得荣县| 玉山县| 海宁市| 建平县| 营口市| 花莲县| 开鲁县| 塔城市| 刚察县| 和顺县| 西林县| 肇庆市| 徐州市| 迭部县| 弋阳县| 甘德县| 陇川县| 平山县| 恩平市| 雷州市| 兴国县| 西贡区| 南昌县| 高州市| 肃南| 郴州市| 滁州市| 西盟| 泰顺县| 黔江区| 赤峰市| 平潭县|