
現在Microsoft Visual C++ 2010 Expressでプログラミングの勉強中なのですが、
2の補数計算で
”100000004466FFFFFFFFFFFFFFFFFFFFFFFFFFFF”
この数値の加算後の2の補数を行った際に
最終的にiToal = 3756
となり、最後に次のプログラムを実行しました。
iHosu = ~iTotal; // 1の補数
iHosu++; // +1
sprintf( cAns, "%s%02X%c", cOrg, iHosu, 0x22 );
最終的には結果が
”100000004466FFFFFFFFFFFFFFFFFFFFFFFFFFFF54”
と出てほしいのですが、
”100000004466FFFFFFFFFFFFFFFFFFFFFFFFFFFF154”
とでます。
iHosuの下2桁の文字だけを文字列につけるようにしたいのですが、どうしたらよいでしょうか?
No.2ベストアンサー
- 回答日時:
「必要なところ」のみが取り出せるよう, 適切な演算をしてください.
回答頂きありがとうございます。
iHosu = ~iTotal; // 1の補数
iHosu++; // +1
iHosu = iHosu & 0x00FF;
sprintf( cAns, "%s%02X%c", cOrg, iHosu, 0x22 );
printf( "%s\n", cAns ); //文字列結果」
このようにすることでできるようになりました。助かりました。
No.1
- 回答日時:
iHosu = ~iTotal; // 1の補数
iHosu++; // +1
iHosu &= 0xff;
sprintf( cAns, "%s%02X%c", cOrg, iHosu, 0x22 );
>と出てほしいのですが、
>”100000004466FFFFFFFFFFFFFFFFFFFFFFFFFFFF154”
>とでます。
注意力が不足している。
”100000004466FFFFFFFFFFFFFFFFFFFFFFFFFFFF154”
ではなくて
”100000004466FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF154”
が出ている筈だ。「F」の個数を良く数えてみなさい。
回答頂きありがとうございます。現在私はATmega88というマイコンのプログラミングなどをしているのですが、このマイコンのEEPROMメモリーの内容を書き換える際にテキストファイル化されたインテルHEXというテキストを扱うときがあり、データの編集をテキストエディタで行う際に2の補数計算が必要になります。
int型が32ビットなので、FFFFF154が後ろに付くと思うのですが、インテルHEXファイルのフォーマットなのでしょうがこの中の54の部分のみが必要になるようです。
なるべくなら、54以外の文字列を消したいと考えています。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Vba Replace関数について教えて...
-
CSSが全く分かりません、お助け...
-
CPUが16bitでも32bitOSでコンパ...
-
最初に聞かれたこと
-
c言語の問題の説明、各所ごとに
-
Cのオブジェクトファイルの逆ア...
-
C言語 関数、変数の宣言について
-
C言語について。
-
C言語でファクト関数を使わずに...
-
プログラミング 素数か素数では...
-
あってる
-
DNCL(共テ用プログラミング言語...
-
int16_t の _t は何?
-
DLLファイルの逆コンパイラにつ...
-
visual studio 2022でのC#プロ...
-
プログラミングc++を全く分か...
-
DNCL(共テ用プログラミング言語...
-
C言語 配列と関数の練習問題
-
gccを行ってもexeファイルが生...
-
C言語 列挙型(enum型)変数について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
書店・アマゾンで購入できる、P...
-
「情報科学入門Rubyを使って学...
-
fortran90について
-
web上のhtmlファイルから文字デ...
-
c言語でウィンドウズアプリケー...
-
参考資料を探しています
-
Web上から画像に文字入力したい。
-
COBOLのIFの入れ子について
-
小文字wと大文字Wの区別
-
VB.NETで階乗を求めるプログラ...
-
Windowsでchangenotifyしたい
-
Rubyのソースを難読化すると「u...
-
Ruby / passenger のインストー...
-
バーコードのチェックデジット...
-
Ruby on Railsでボタンをクリッ...
-
パソコンのフォルダ保存について
-
プログラミング言語で大文字と...
-
Rubyの.soについて
-
Rubyを勉強している初心者です...
-
We're sorry, but something we...
おすすめ情報