fortran66のブログ

fortran について書きます。

【寝言】ゾンビは移民 

浮動小数点数のゾンビ NaN と 2 の補数表現整数のゾンビ

浮動小数点数界のゾンビと言えば NaN (Not A Number) が挙げられると思います。一度 NaN が出ると、これと演算したものは皆 NaN に感染して NaN になっていくゾンビのような恐ろしさがあります。

しかし、奇妙なことに sign 関数で符号を取ったりすると、普通の数に戻ったりします。IEEE754 における NaN の内部表現は一意ではなく符号ビットも正負とも定まらないのですが、なぜか正として扱われることが多いようです。IEEE754 では NaN の符号について定義されていないので処理系依存なんだという話を聞いたことがあります。

ではこの NaN を整数に変換した場合どうなるのでしょう?試してみました 。なお nan は数値として普通に数値の入力に使えます。

以下に見るように、NaN は 2**31 に変換されました。2**31 は、2**31 = -2**31 と 0 = -0 のように符号を反転させても元に戻る数なので、32 ビット 2 の補数表現の符号付整数界のゾンビっぽい数なので、変換するならこれしかないよなという納得感はあります。

コンピュータ内の整数表現は、整数そのものというよりビット数に応じた剰余演算構造を取っていますが、符号付の 2 の補数表現は剰余でかつ最小剰余になるような表現になっていて、かつ本来 0 元になるべき 2**31 が居座ったために、2**31 は符号を反転させても元に戻るという 0 元のような性質を持ちつつ 0 でないゾンビのような数になっています。

ソース・プログラム

    program nan
      implicit none
      real :: x
      read *, x
      print *, x, int(x), ':', 2**31, -2**31
    end program nan

intel fortran v18.0.1

nan
           NaN -2147483648 : -2147483648 -214748364
続行するには何かキーを押してください . . .

gfortran v7.2.0

nan
              NaN -2147483648

但し2*31は略

ゾンビ映画

冷戦終結後に、1950年代の冷戦期に流行した宇宙人侵略SF映画は核戦争の不安を投影にしたものだ、という解釈が一般化しました。

ここしばらく、英米などで流行していたゾンビ映画も、してみると移民への不安を投影したものだと言えるかもしれません。

最近のゾンビ映画のゾンビは、走ったり知恵があったり、何らかのコミュニケーションや愛情の可能性を示したり、昔のゾンビに比べて進化していますが、昔のゾンビが漠然たる不安の投影なのに対して、今のゾンビが移民に対する不安の投影と思えば、まぁ時代に合わせて変わるのも理解できます。

移民による社会構造の矛盾が噴き出しているイギリスでゾンビ映画が人気を博するのもよく分かる気がします。

ブラッド・ピット主演の「ワールド・ウォーZ」では、明らかに移民と分かる形でゾンビを描いていたので、移民問題もいよいよ深刻化して、抑圧された漠然とした不安から意識レベルでの具体的な問題となってきたかもしれません。

そうならば、もはや遠回しのゾンビ映画は役目を終えて、ゾンビ映画ブームは去ってゆくのでしょう。

アメリカではショッピング・センターがアマゾンに負けて続々と縮小していっているようなので、立てこもる場所もなくなりそうですがw

ゾンビ ディレクターズカット版<HDリマスター版> [Blu-ray]

ゾンビ ディレクターズカット版 [Blu-ray]

ゾンビとしての支那人

中共では、突如改憲がなされて習近平の終身国家主席化が確定的になりましたが、この改憲はもちろん改憲を目指す安倍首相を側面支援するために行われたものですw

改憲提起は採決のわずか一週間前で、必然性も感じられない唐突ぶりにもかかわらず賛成が99%を示すような投票結果でした。習近平は安倍首相応援団として実に従順な忠犬ぶりを示しました。キビ団子を1個呉れてやりましょう。ホレ食え。おすわり!お手!

銀台金闕夕沈沈  餌を貰って習ちんちん!

しかし、マルクス・レーニン主義歴史観通りに、資本主義から独占資本主義、そして帝国主義へ向かっている中共に、いずれ民主化するとか寝言を騙っている欧米白人リベラルの愚劣さは滑稽千万で、ゾンビにも心があって共存できるとか言ってゾンビに食われるゾンビ映画の滑稽家を思い出させます。