女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

PLC中常用進制及相互轉換方法

jf_bq60R2Xt ? 來源:數控狂人 ? 作者:數控狂人 ? 2022-10-17 11:10 ? 次閱讀

數制也稱計數制,是用一組固定的符號和統一的規則來表示數值的方法。

任何一個數制都包含兩個基本要素:基數和位權

基數:數制所使用數碼的個數。

例如,二進制的基數為2;十進制的基數為10。

位權:數制中某一位上的1所表示數值的大小(所處位置的價值)。

例如,十進制的123,1的位權是100,2的位權是10,3的位權是1。

二進制中的 1011 ,左起第一個1的位權是8,0的位權是4,第二個1的位權是2,第三個1的位權是1。

PLC中常用的數制有:十進制、二進制、十六進制、八進制等。

此外還有BCD碼和ASCII碼也偶爾會使用。

十進制(Decimal?notation):

如1234=1*103+2*102+3*101+4*100,逢十進一,基數為10,單個數是0-9,每位的系數乘于基數(10)的N次方,N為其所處的位數。

二進制(Binary?notation):

如1101=1*23+1*22+0*21+1*20=13,逢二進一,基數為2,單個數只有0和1, 每位的系數乘于基數(10)的N次方,N為其所處的位數。從第3位至0分別為8,4,2,1,所以二進制也成8421碼。如果表示有符號數,則用最高位表示符號,0為正數1為負數。正數以二進制原碼表示;負數則以補碼存儲,即將原碼逐位取反再加1。

十六進制(Hexdecimal?notation):

逢16進1的進位制。一般用數字0到9和字母A到F(或a~f)表示,其中:A~F表示10~15,這些稱作十六進制數字。

八進制(Octal?notation):

逢八進一,單個數有0-7,在PLC中常用于編址,數據運算應用較少。BCD碼(Binary-Coded Decimal?):亦稱二進碼十進數或二十進制代碼。用4位二進制數來表示1位十進制數中的0~9這10個數碼。通常時鐘采用BCD碼存儲。

ASCII(American Standard Code for Information Interchange:美國信息交換標準代碼):

是基于拉丁字母的一套電腦編碼系統,主要用于顯示現代英語和其他西歐語言。它是現今最通用的系統,并等同于國際標準ISO/IEC 646。PLC中數據存儲只能以0和1形式,其它數據可通過進制轉換成二進制,但是字母和一些特殊符號用什么表示則需要約定一套轉換規則,于是美國有關的標準化組織就出臺了ASCII編碼。

浮點數(float):

又稱實數(REAL),浮點數是屬于有理數中某特定子集的數的數字表示,在計算機中用于近似表示任意某個實數。具體來說,這個實數由一個整數或定點數(即尾數)乘以某個基數(計算機中通常是2)的整數次冪得到,這種表示方法類似于基數為10的科學計數法。

在二進制科學表示法中:S=M×2^N

主要由三部分構成:符號位+階碼(N)+尾數(M)。對于float型數據,其二進制有32位,其中符號位1位,階碼8位,尾數23位。

符號位:0表示正,1表示負。

階碼:這里階碼采用移碼表示,對于float型數據其規定的偏置量為127,階碼有正有負,對于8位二進制,則其表示范圍為?128~127。比如,對于float型數據,若階碼的真實值為2,則加上127后為129,其階碼表示形式為10000010。

尾數:有效數字位,即部分二進制位(小數點后面的二進制位),因為規定M的整數部分恒為1,所以這個1就不進行存儲了。

舉例說明

float型數據125.5轉換為標準浮點格式,125的二進制表示形式為1111101,小數部分表示為二進制為 1(小數部分乘以2,小于1則為0,大于1則為1,小數繼續乘以2,直到小數部分為0為止),則125.5二進制表示為1111101.1,由于規定尾數的整數部分恒為1,則表示為1.1111011*2^6,階碼為6,加上127為133,則表示為10000101,而對于尾數將整數部分1去掉,為1111011,在其后面補0使其位數達到23位,則為11110110000000000000000。則其二進制表示形式為:0 10000101 11110110000000000000000

那么這些進制之間是如何轉換呢?

1.十進制轉二進制方法為:

十進制數除2取余法,即十進制數除2,余數為權位上的數,得到的商值繼續除2,依此步驟繼續向下運算直到商為0為止。(具體用法如下圖)

1489eaf8-4c75-11ed-a3b6-dac502259ad0.png

2.二進制轉十進制方法為:

把二進制數按權展開、相加即得十進制數。(具體用法如下圖)

149bb4a4-4c75-11ed-a3b6-dac502259ad0.png

3.二進制轉八進制方法為:

3位二進制數按權展開相加得到1位八進制數。(注意事項,3位二進制轉成八進制是從右到左開始轉換,不足時補0)。(具體用法如下圖)

14b8d6ce-4c75-11ed-a3b6-dac502259ad0.png

4.八進制轉成二進制方法為:

八進制數通過除2取余法,得到二進制數,對每個八進制為3個二進制,不足時在最左邊補零。(具體用法如下圖)

14cbeebc-4c75-11ed-a3b6-dac502259ad0.png

5.二進制轉十六進制方法為:

與二進制轉八進制方法近似,八進制是取三合一,十六進制是取四合一。(注意事項,4位二進制轉成十六進制是從右到左開始轉換,不足時補0)。(具體用法如下圖)

14deed46-4c75-11ed-a3b6-dac502259ad0.png

6.十六進制轉二進制方法為:

十六進制數通過除2取余法,得到二進制數,對每個十六進制為4個二進制,不足時在最左邊補零。(具體用法如下圖)

14f65bfc-4c75-11ed-a3b6-dac502259ad0.png

7.十進制轉八進制或者十六進制有兩種方法:

第一:間接法—把十進制轉成二進制,然后再由二進制轉成八進制或者十六進制。這里不再做圖片用法解釋。

第二:直接法—把十進制轉八進制或者十六進制按照除8或者16取余,直到商為0為止。(具體用法如下圖)

154ef708-4c75-11ed-a3b6-dac502259ad0.png

8.八進制或者十六進制轉成十進制方法為:

把八進制、十六進制數按權展開、相加即得十進制數。(具體用法如下圖)

157bef38-4c75-11ed-a3b6-dac502259ad0.png

9.BCD碼轉十進制:

因為BCD碼是用四位二進制表示一位十進制數,所以轉換方法類似二進制轉十六進制“取四合一”法,四位組合后轉成十進制得到的就是十進制。以上介紹了PLC中常用進制及相互轉換方法,意在讓初學者理解進制含義及轉換規律。真正使用時可利用計算機提供的程序員型計算器輕松運算出來。

審核編輯:彭靜
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • plc
    plc
    +關注

    關注

    5030

    文章

    13700

    瀏覽量

    472005
  • 存儲
    +關注

    關注

    13

    文章

    4499

    瀏覽量

    87056
  • BCD
    BCD
    +關注

    關注

    1

    文章

    90

    瀏覽量

    30468
  • 代碼
    +關注

    關注

    30

    文章

    4886

    瀏覽量

    70239

原文標題:PLC中常用數制及各進制的轉換方法,不會還有電氣人不會吧?!

文章出處:【微信號:數控狂人,微信公眾號:數控狂人】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    labview中浮點數與十六進制字符串相互轉

    與下位機數據交流及通訊時,經常有浮點數與十六進制字符串相互轉化的需求,經過兩天總結,找到了最簡潔的相互轉化的方法,萌新歡迎大佬指正,文件也附上。*附件:HEX字符串與浮點數
    發表于 10-21 19:51

    字符 數字相互轉換

    很慚愧,俺對基礎的東西不是很了解,數字 1和字符 ‘1’ 怎么相互轉換 ,因為在LCD1602和TFT彩屏顯示涉及到相互轉換,總是弄不清楚,請大蝦給科普下,‘0’是代表字符 0 嗎?
    發表于 05-26 11:22

    labview里單精度浮點數和十六進制數如何相互轉換

    我需要將一個單精度的浮點數(如0.33)轉換為十六進制數然后通過串口發送,同時還需將串口讀取的十六進制轉換為單精度浮點數。 求問在labview里如何使浮點數和十六
    發表于 10-14 11:04

    BCD碼與十進制相互轉換,無密碼,可直接用

    本帖最后由 kevindandan 于 2019-6-5 16:09 編輯 前面有個串口的小應用,涉及到十進制數與BCD碼的相互轉換,看似很簡單,也花了點時間。附件是LabVIEW2017的代碼,希望同壇友共同交流,有改進意見的可以提,謝謝。
    發表于 09-08 07:56

    ASCII-十六進制相互轉換 自己寫的,僅供參考

    ASCII-十六進制相互轉換 VI源碼,僅供參考,如有錯誤歡迎指正!
    發表于 10-26 10:59

    如何實現了SPI/ASI的相互轉換

    如何實現了SPI/ASI的相互轉換
    發表于 06-08 06:32

    進制數與八進制數的相互轉換

    進制數與八進制數的相互轉換 (1)二進制轉換為八進制數: 將二
    發表于 09-24 11:27 ?2w次閱讀

    進制數與十六進制數的相互轉換

    進制數與十六進制數的相互轉換進制數與十六進制數的相互轉換,按照每4位二
    發表于 09-24 11:28 ?9916次閱讀
    二<b class='flag-5'>進制</b>數與十六<b class='flag-5'>進制</b>數的<b class='flag-5'>相互轉換</b>

    觸發器的相互轉換

    觸發器的相互轉換 基本觸發器之間是可以互相轉換的,JK觸發器和D觸發器是兩種最常用的觸發器,別的觸發器可以通過這兩種觸發器轉化得來,它們
    發表于 09-18 08:56 ?4928次閱讀
    觸發器的<b class='flag-5'>相互轉換</b>

    各種進制相互轉換

    各種進制相互轉換 1、其它進制轉換為十進制  方法是:將其它
    發表于 09-19 11:29 ?3977次閱讀
    各種<b class='flag-5'>進制</b><b class='flag-5'>相互轉換</b>

    數模、模數相互轉

    數模、模數相互轉化數模、模數相互轉化數模、模數相互轉
    發表于 01-15 15:07 ?8次下載

    PLC中常用數制及如何轉換

    中某一位上的1所表示數值的大小(所處位置的價值)。例如,十進制的123,1的位權是100,2的位權是10,3的位權 是1。二進制中的 1011 ,左起第一個1的位權是8,0的位權是4,第二個1的位權是2,第三個1的位權是1。 PLC
    發表于 04-18 11:29 ?1次下載
    <b class='flag-5'>PLC</b><b class='flag-5'>中常用</b>數制及如何<b class='flag-5'>轉換</b>

    PLC中常用進制相互轉換方法

    數制也稱計數制,是指用一組固定的符號和統一的規則來表示數值的方法。它按進位的原則進行計數的方法,稱為進位計數制。
    的頭像 發表于 04-27 11:32 ?6131次閱讀
    <b class='flag-5'>PLC</b><b class='flag-5'>中常用</b><b class='flag-5'>進制</b>及<b class='flag-5'>相互轉換</b><b class='flag-5'>方法</b>

    淺談PLC中常用進制相互轉換方法

    BCD碼是用四位二進制表示一位十進制數,所以轉換方法類似二進制轉十六進制“取四合一”法,四位組合
    發表于 06-10 07:11 ?1672次閱讀
    淺談<b class='flag-5'>PLC</b><b class='flag-5'>中常用</b><b class='flag-5'>進制</b>及<b class='flag-5'>相互轉換</b><b class='flag-5'>方法</b>

    如何實現二進制和BCD碼數據的相互轉變?

    如何實現二進制和BCD碼數據的相互轉變? 二進制碼是將十進制數字表示為二進制數和十進制數的一種表
    的頭像 發表于 02-18 14:51 ?4853次閱讀