国产aaaa级全身裸体精油片_337p人体粉嫩久久久红粉影视_一区中文字幕在线观看_国产亚洲精品一区二区_欧美裸体男粗大1609_午夜亚洲激情电影av_黄色小说入口_日本精品久久久久中文字幕_少妇思春三a级_亚洲视频自拍偷拍

首頁 > 化工知識 > PLC基礎篇之數(shù)制及其表示方法

PLC基礎篇之數(shù)制及其表示方法

時間:2020-09-25 來源:方正智芯 瀏覽:

所謂“數(shù)制”,是指“數(shù)”的表示方法,即計數(shù)的方法。數(shù)制采用進位的方法,當數(shù)值增加到該位能表示的最大值時,會將位數(shù)增加一位(進位)。按照進位的規(guī)則進行計數(shù)的數(shù)制,稱為進位數(shù)制。常見的進位數(shù)制有:二進制(Binary)、十進制(Decimal)和十六進制(Hexadecimal)。

人類的思維習慣于十進制(Decimal),所謂“逢十進一”。這個沒什么好說的,地球人都知道。

本文要介紹的是PLC編程相關的概念,因此要重點介紹的是二進制(Binary)和十六進制(Hexadecimal)。

現(xiàn)代計算機普遍采用馮·諾伊曼(John von Neumann,1903~1957)的體系結構。美籍匈牙利科學家馮·諾伊曼根據(jù)電子元件的雙穩(wěn)特性,提出數(shù)字計算機應采用二進制進行存儲和運算。

二進制(Binary)只有“0”和“1”兩個數(shù)碼,可以表示數(shù)字量的兩種不同的狀態(tài),比如觸點的吸合與斷開,線圈的通電與斷電等等。在PLC的存儲單元中,可以使用一個“位(bit)”來表示“0”或者“1”兩種值,8個“位”組成一個字節(jié)(Byte)。以西門子S7系列PLC為例,可以使用STL語句 “S Q0.0”將Q0.0置為“1”。其中,“Q0.0”中的“Q”表示輸出過程映像區(qū)(Output),第一個“0”表示第“0”個字節(jié),第二個“0”表示該字節(jié)的第“0”位。當該指令執(zhí)行后,PLC的輸出模塊的Q0.0將會有信號輸出,它連接的繼電器線圈會通電,常開觸點吸合,接通相應的電路。

二進制采用“逢二進一”的規(guī)則,可以使用多位二進制數(shù)來表示數(shù)值。將最低位記為第0位,從右往左的第n位,其權值(數(shù)制中某位上的1所代表的數(shù)值)為2的n次方。

在西門子S7系列PLC中,二進制常數(shù)以“2#”開始,比如:2#1101。二進制數(shù)可以轉換成十進制數(shù),轉換方法是把各個位上的數(shù)乘以其權值,然后相加。比如2#1101,等于1乘以2的3次方(=8),加上1乘以2的2次方(=4),加上1乘以2的0次方(=1),等于十進制13。

由于二進制數(shù)位數(shù)太多,編程時書寫起來不太方便。為了簡化書寫,同時保持二進制宜于“位”操作的特性,人們把四個二進制位組成一組,用來表示一個數(shù)。由于四個二進制位所成表示的最大數(shù)是2#1111(=15),于是就出現(xiàn)了十六進制的數(shù)制。十六進制的數(shù)碼除了包括十進制的0~9之外,還包括A~F六個字母。A等于十進制的10,依次遞增,F(xiàn)等于10進制的15。

十六進制的表示方法比較多,在C/C++中用前綴"0x"表示,比如上一篇文章中提到的“0x0384”;在VB中使用前綴"&H"表示,比如“&H1A2B”;在西門子S7系列PLC中,使用“16#”來表示16進制數(shù)。但通常情況下,在表示16進制數(shù)的時候,需要同時指出它的數(shù)據(jù)類型(后續(xù)會有專門文章介紹數(shù)據(jù)類型相關知識),比如B#16#56表示16進制數(shù)56,它的數(shù)據(jù)類型是字節(jié)(Byte)。

十六進制數(shù)可以很方便的轉換成二進制數(shù),只需要把每一位數(shù)轉成二進制數(shù),然后組合起來即可。比如B#16#56,其中16#5=2#0101,16#6=2#0110,所以16#56=2#1010110,如下圖:

程序設計中還用到一種編碼,稱為BCD碼。BCD是英文"Binary-Code Decimal"的縮寫,這種編碼的數(shù)制是十進制。BCD碼使用四個二進制數(shù)來表示一位十進制數(shù),每一位允許的范圍是2#0000~2#1001,也就是十進制的0~9,采用“逢十進一”的規(guī)則。

BCD碼是有符號的,用最高位來表示符號,“0”表示正數(shù),“1”表示負數(shù)。對于一個四位的BCD碼而言(16個二進制位),能表示的范圍是“-999~+999”。為什么呢?其實比較好理解,你想,最高位是符號位,那么就剩下了三位,由于每一位BCD碼,其本質是十進制數(shù),所以每一位最大的數(shù)都是9,所以三位數(shù)最大就是999,加上符號,所以四位BCD碼能表示的十進制數(shù)的范圍是“-999~+999”。同樣的道理,八位BCD碼(32個二進制位)能表示的十進制數(shù)的范圍是“-9999999~+9999999”。

好了,關于PLC編程需要的數(shù)制的知識就先聊到這里了。相關參考文章:

PLC基礎篇之編程語言的魅力

PLC基礎篇之PLC的誕生及工作原理

給你講個來自《格列佛游記》的計算機故事

版權:如無特殊注明,文章轉載自網絡,侵權請聯(lián)系cnmhg168#163.com刪除!文件均為網友上傳,僅供研究和學習使用,務必24小時內刪除。
相關推薦