トップ «前の日記(2010-09-18(Sat)) 最新 次の日記(2010-10-01(Fri))» 編集

屑俺日記

僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。


2010-09-19(Sun) まだ分からない

2進表記思い出した。

前の作例と、あまり変らない。format の使い方に少し 工夫した点を除けば。

for x in range(1,11):
    for y in range(1,11):
        print('{0:2d} is {0:4b}, \
 {1:2d} is {1:4b},\
 {0:2d} & {1:2d} is {2:2d}({2:4b}), \
 {0:2d} | {1:2d} is {3:2d}({3:4b})'\
 .format(x, y,  x & y,  x | y))

実行すると100行になった。
その一部がこんな感じ。

 7 is  111,   8 is 1000,  7 &  8 is  0(   0),   7 |  8 is 15(1111)
 7 is  111,   9 is 1001,  7 &  9 is  1(   1),   7 |  9 is 15(1111)
 7 is  111,  10 is 1010,  7 & 10 is  2(  10),   7 | 10 is 15(1111)
 8 is 1000,   1 is    1,  8 &  1 is  0(   0),   8 |  1 is  9(1001)
 8 is 1000,   2 is   10,  8 &  2 is  0(   0),   8 |  2 is 10(1010)

少し書き換える。and と or の十進値を追加する。
'or' でなく '|' 、'and'でなく'&'だった。
隙間詰めは、次の課題だろうか。

and と &、or と |

>>> 7 and 8
8
>>> 7 & 8
0
>>> 7 or 8
7
>>> 7 | 8
15
>>> 8 and 7
7
>>> 8 & 7
0
>>> 8 or 7
8
>>> 8 | 7
15

リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。

index.htmlは ここから。