二進数のループ – プログラミング – Home

通知
すべてクリア

[解決済] 二進数のループ


TORA
 TORA
(@TORA)
ゲスト
結合: 22年前
投稿: 8
Topic starter  

Byte B

for(i=0;i<B;i++)

このような使い方をしているのを見るのですが,Bが8ビットで00000100の場合,4回ルー
プをすると予想できるのですが,ループコマンドで,2進数を10進数に直さずに使用で
きるのでしょうか。
よろしくお願いします。


引用未解決
トピックタグ
keichan
 keichan
(@keichan)
ゲスト
結合: 19年前
投稿: 9
 

TORAさんの質問の意味が理解できませんので、逆に質問させて下さい。

>ループコマンドで,2進数を10進数に直さずに使用できるのでしょうか。
では、2進数 を 10進数 に直して使用しているサンプルを提示願います。


返信引用
ee
 ee
(@ee)
ゲスト
結合: 18年前
投稿: 2
 

Byte(unsigned charかな?)が表すのは「数」であって「数字」ではありません。
2進数や10進数は「数」を「数字」で表す場合の表現方法です。
その辺混同されてるのでは?
http://ja.wikipedia.org/wiki/%E6%95%B0


返信引用
a
 a
(@a)
ゲスト
結合: 23年前
投稿: 59
 

>2進数を10進数に直さずに
意味不明

仮にiがint型とすると、内部は
signdの16ビット(32ビット)データです。

i<B が真の間ループするだけです。

ただこの場合は、
i<(int)B とキャストした方がいいと思います。


返信引用
TORA
 TORA
(@TORA)
ゲスト
結合: 22年前
投稿: 8
Topic starter  

皆様方,ご返信有難うございます。
暖かいご助言ありがとうございます。
まだ,ピンと来ていないのですが,

Byteが表す[数]が00000100の場合,仮にiがint型とすると、8ビットデータとして
真の間ループすることが考えられるため,4回ループすると考えれる。

このような理解で宜しいのでしょうか。
何度も申し訳ございませんが,ご助言いただけると幸いです。


返信引用
PATIO
(@patio)
Famed Member
結合: 3年前
投稿: 2660
 

二進数とか十進数とか言うのは、特定の数値を表現する時の
表現方法に違いであって数値そのものが変わるわけではないという事を
踏まえた上で二進数表現で数値を指定したいと言っているのでしょうか?

あと、C++で二進数表現の数値の記述方法ってありましたっけ?
8進数と10進数と16進数なら知っていますけれど、
二進数表現で数値を表す方法は無かったような気がするんですが。
どうしても二進数表現の値をソース上に示しておきたいのであれば、
コメントで入れとくぐらいしか方法はないと思います。
実際の数値設定には、8進数と10進数と16進数の何れかを使う事になるかと。


返信引用
PATIO
(@patio)
Famed Member
結合: 3年前
投稿: 2660
 

> Byteが表す[数]が00000100の場合,仮にiがint型とすると、8ビットデータとして
> 真の間ループすることが考えられるため,4回ループすると考えれる。

というか比較する時に型が違うと型をそろえてから比較するって言う
基本的な話は理解されていますか?
そのまま型が違うままで比較されるわけではなくて内部的には型を合わせて
比較されます。だから(int)で明示的にキャストした方が良いとかかれているのですけれど。

この辺はC言語とかC++言語の入門書を読めば書いてありますから
御自分で読んで見て確かめてください。


返信引用
TORA
 TORA
(@TORA)
ゲスト
結合: 22年前
投稿: 8
Topic starter  

PATIO様

ご返信有難うございます。
>あと、C++で二進数表現の数値の記述方法ってありましたっけ?
>8進数と10進数と16進数なら知っていますけれど、
>二進数表現で数値を表す方法は無かったような気がするんですが。

そうですね,説明不足でした。16進数です。
2進数で数値をあらわす方法を考えていました。

>どうしても二進数表現の値をソース上に示しておきたいのであれば、
>コメントで入れとくぐらいしか方法はないと思います。
>実際の数値設定には、8進数と10進数と16進数の何れかを使う事になるかと。

分かりました。

皆様方のお蔭様で解決することができました。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました