グレイコードを整数へ変換したいと思っているのですが、
変換方法がわかりません。どなたか御存知ないでしょうか?

例えば 2進法の数字 01101を 整数に変換するには、
0×2^(4)+1×2^(3)+1×2^(2)+0×2^(1)+1*2^(0)とすれば
整数 13を得ることができます。

グレイコードで表記された 01101を整数に変換するには
どのような計算をすれば よいのかが知りたいことです。
できれば、01101に限らず 2進法の10進法への変換のように一般的な
方法があればと思っています。

御存知なら お助け下さい。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

ビット列をan,an-1,,,a0として


グレイコードの数を(an,an-1,,,a0)gと表記することにします。
またビット列から{0,1}への関数parityを
parity(x)=0 (xの中の1の数が偶数個)
parity(x)=1 (xの中の1の数が奇数個)
と定義します。

グレイコードの整数への変換は次のように求められます。

(an,an-1,,,a0)g=Σ_{i=0,,,n}parity(an,,,ai)*2^i

例えば(01101)gであれば
2^4*parity(0)+
2^3*parity(01)+
2^2*parity(011)+
2^1*parity(0110)+
2^0*parity(01101)
=2^3+1=9
となります。

ところで整数へ変換したいとだけありますがちょっと言葉が足りないように思います。
とにかく何でもいいから整数へマッピングしたいのであれば2進法のマッピング
を流用したっていいわけですから。どのような性質を満たしてマッピングしたいのか
きちんと言ったほうが良いと思います。
私は勝手に予想して回答しましたがあなたの望んだものだったでしょうか?
    • good
    • 0
この回答へのお礼

nagata様 回答ありがとうございました。
言葉が足りなかった点については、お詫び致します。
私の方も、グレイコードの詳細について、まだあまり知識がなかつたので
このような不充分な質問の形になりました。
回答頂いた内容で、十分です。ありがとうございました。

お礼日時:2001/12/28 15:04

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q線形です (1)を x+3y-2z=0 x-2y+4z=0 x^2+y^2+z^2=1をもちいて 答

線形です
(1)を
x+3y-2z=0
x-2y+4z=0
x^2+y^2+z^2=1をもちいて
答えが+-の答えになりました
(2)では外せきが8,-6,-5となり
おおきさの5ルート5で割ると
+-の答えにはなりませんでした
どちらが正しいのでしょうか?

Aベストアンサー

外積からでてきた単位べクトルは、外積の定義から、ベクトルa、bに垂直ですよね。
だからそれと正反対のベクトルも、ベクトルa、bに垂直な単位ベクトルだから、これも答えに入れれば
よいのです。つまり外積から出した単位ベクトルの各成分に(-1)をかけた成分のベクトルも答えに
なります。そしてこうして出した2つのベクトルは、先に内積で出した2つのベクトルと一致します。

Q方程式 x(a^2+b^2)+y(c^2+d^2)+z(ac+bd)=0

x,y,zを定数とするとき、

 x(a^2+b^2) + y(c^2+d^2) + z(ac+bd) = 0

を満たす a,b,c,d はどのように求められるのでしょうか?

Aベストアンサー

>>x,y,zに定数が与えられたとき、
>>x(a^2+b^2)+y(c^2+d^2)+z(ac+bd)=0
>>(ad-bc)≠0
>>を満たす a,b,c,d を求める方法は…?ということです。

依然として、「条件不足である」という状態が解消されていないため、求めることは不可能です。

ただし、No.1の補足にあるように、「式を満たす a,b,c,d の組み合わせを1つ答えなさい」ということであれば可能で、No.3に答えの一例があります。(これは、a,b,c,dを先に決めて、与式が成り立つように後からx,y,zを決めましたが。)

質問の内容は何らかの問題の一部であるように見受けられるのですが、そもそも、問題(又は問題文)の全体像はどのようになっているのですか。

Qx>0,y>0,z>0 で、x^2+y^2+z^2=a^2のとき、

x>0,y>0,z>0 で、x^2+y^2+z^2=a^2のとき、
xy+yz+zxの最大値を求めよ。

コーシーシュワルツの不等式を使うとでるとおもうが、
別解での解答はどうなるのか。よろしくお願いします。

Aベストアンサー

どういう風にシュワルツを使うのか。。。。。w
そんな仰々しいものを持ち出さなくても、教科書に載ってる不等式(絶対不等式)で用が足りる。



x、y、zは実数から、x^2+y^2+z^2≧xy+yz+zx で終わり。
等号は、x>0,y>0,z>0から、x=y=z=a/√3の時。

Qx+y+z=0,2x^2+2y^2-z^2=0のとき,x=yであることを証明せよ。

クリックありがとうございます(∩´∀`)∩

 ★x+y+z=0,2x^2+2y^2-z^2=0のとき,x=yであることを証明せよ。

この問題について説明をお願いします。

Aベストアンサー

おおざっぱな説明になりますが、左の式を
z=-x-y
として、それを右の式のzに代入します。
それを展開してまとめると
x^2-2xy+y^2=0
という式になります。
あとはこれを因数分解すれば
(x-y)^2=0
となるので、x=yという答えがでます。
与えられた条件がほかになければこれでいいはずです。

Q2^a=3^bを満たす整数(正の整数、0、負の整数)はa=b=0のみ。これは2と3に限った話なのか。

2^a=3^bを満たす整数(正の整数、0、負の整数)はa=b=0のみですがこれは2と3に限った話なのか。
それとも
A^a=B^bとおくと
4^a=5^b
2^a=4^b
などのようにA,Bは正の整数ならばなんでもいいのか。それともA,Bは互いに素など条件がありますか。

A,Bともに正の整数でかつA,Bは互いに素のときA^a=B^bを満たす整数a,bはa=b=0のみ。
なのか
A,Bともに正の整数のときA^a=B^bを満たす整数a,bはa=b=0のみ。
なのか。どちらですか。

さらにA,Bは負の整数、0ではダメだと思っていますがこれは正しいでしょうか。

Aベストアンサー

A^a=B^b で、AとBが互いに素でなければ、a=b=0以外が存在します。

2^2=4^1
6^2=3^4

81^a=64^b は、a=b=0 のみ


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング

おすすめ情報