C#で整数の上下のバイトを取得し、COMポートに送信するためのchar配列として配置しますか?

StackOverflow https://stackoverflow.com/questions/5419453

質問

CIではこれを行います

int number = 3510;

char upper = number >> 8;

char lower = number && 8;

sendbyte(上);

sendbyte(lower);

ここで、上下は両方とも両方= 54です

C#で私はこれをしています:

            int number = Convert.ToInt16("3510");
            byte upper = byte(number >> 8);
            byte lower = byte(number & 8);
            char upperc = Convert.ToChar(upper);
            char lowerc = Convert.ToChar(lower);
            data = "GETDM" + upperc + lowerc;
            comport.Write(data);

ただし、デバッガー番号= 3510では、アッパー= 13以下の= 0では、コードを>> 6 upper = 54に変更すると、これは意味がありません。これは絶対に奇妙です。

基本的に、16ビット番号から上下のバイトを取得し、「getDM」の後にcomポートから送信したいだけです。

これどうやってするの? Cではとても簡単ですが、C#では完全に困惑しています。

正しい解決策はありません

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top