小少年
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 25 個
工控威望: 266 點
下載積分: 1648 分
在線時間: 37(小時)
注冊時間: 2017-08-18
最后登錄: 2024-09-24
查看小少年的 主題 / 回貼
樓主  發(fā)表于: 2020-09-03 21:46
D10=1234情況下
BCD  D10  D11  那么D11是不是就等于4660
BIN  D10  D11  那么D11是不是等于1234
小侯
小侯
級別: 工控俠客
精華主題: 0
發(fā)帖數(shù)量: 481 個
工控威望: 2611 點
下載積分: 7901 分
在線時間: 503(小時)
注冊時間: 2008-10-17
最后登錄: 2024-11-05
查看小侯的 主題 / 回貼
1樓  發(fā)表于: 2020-09-04 08:22
D10=1234= 0100 1101 0010

BCD D10 D11

D11= 0001 0010 0011 0100 = 4660

BIN D10 D11 會報錯 4100

以D10內(nèi)數(shù)據(jù)分成 4BIT來看,1101的十進制是13
而BCD的指令每位只能0~9
樓主留言:
程序內(nèi)有這個指令,用的意義在哪里?
小侯
小侯
級別: 工控俠客
精華主題: 0
發(fā)帖數(shù)量: 481 個
工控威望: 2611 點
下載積分: 7901 分
在線時間: 503(小時)
注冊時間: 2008-10-17
最后登錄: 2024-11-05
查看小侯的 主題 / 回貼
2樓  發(fā)表于: 2020-09-07 08:23
1、BCD用在外部數(shù)據(jù)顯示
搭配BCD編碼的七段顯示可以顯示數(shù)字

2、BIN用在指撥開關(guān)輸入
搭配BCD碼的指撥開關(guān)可以輸入0~9

如果是FX有DSW做指撥開關(guān)輸入,SEGL做七段顯示輸出

分離位數(shù)
當一串數(shù)字K1234
經(jīng)過BCD後會存成
0001 0010 0011 0100
在使用DIS 指令
可以將數(shù)據(jù)以4BIT為一組切開存在暫存器
然後在用BIN轉(zhuǎn)換回數(shù)字

看自己的需求再去使用這些指令
指令一定是有它的用處才會被開發(fā)人員寫入
柳絮飛花
無產(chǎn)工程師
級別: 論壇先鋒
精華主題: 0
發(fā)帖數(shù)量: 501 個
工控威望: 1212 點
下載積分: 7855 分
在線時間: 102(小時)
注冊時間: 2017-06-27
最后登錄: 2024-10-22
查看柳絮飛花的 主題 / 回貼
3樓  發(fā)表于: 2020-09-07 08:55
BCD碼,用4位二進制數(shù)來表示1位十進制數(shù)中的0~9這10個數(shù)碼。
工控普通人,學習在路上