時事雑感その他

投稿日:
社民党永田町落ち

 社民党本部、資金繰りが苦しくて家賃が払えず、永田町から落っこちるという。

 以前はたしか、国会図書館の最高裁判所よりの辺りに立派な看板が上がっていたけど、最近そういや見ないな、どうなったんだっけ、と思っていたら知らない間に首相官邸の裏のあたりへ引っ越していたようだ。

 まあ、そりゃあ、多くの人の支持を得ていない、ってことなんだわ、やっぱり。

 現状の断面だけでなく、これまでにやらかしてきたいろんなことのツケでしょうなア。ここ数年、言う事なすことムチャクチャだったんだもの。

 昔の社会党は立派だったよ、だって、下のようなこともありましたよ、戦後すぐの頃は。

 これ、共産党も旧社会党も含んで、全会一致ですからね。そういう懐ってものが、昔の社会党にはあったんだよな。

 絡んで言うと、先日私はこういうアンケートをした。

 このアンケートに回答した人のコメントを見ていくと、先日の稲田防衛大臣の靖国神社参拝に文句を言ってるアホがいて、その論拠が「東條英機みたいな犯罪人が祀られているようなところへ参拝に行くのが正しいのか!?歴史の勉強が足らん!」というようなことなんだけど、そういう連中って、こんな全会一致の赦免決議、つまり、「日本国内に戦犯なんかいない」、もっと言うなら、「靖国神社に戦犯なんか祀られていない、百歩譲って祀られているとしても、全員、国民一致で赦免されている人たちだ」ということを全然知らないんだよ。アンタらのほうが全然勉強が足りないよ。

似非数学「1=2」
b=a\\a+b=2a\\a-b=2a-2b\\(a-b)=2(a-b)\\ \therefore1=2

 何年か前に流行ったものだが、\TeXで浄書しておいたら面白いかな、と。

5 ÷ 4 = 1 余り1
3 ÷ 2 = 1 余り1
5 ÷ 4 = 3 ÷ 2
5 ÷ 4 = 6 ÷ 4
5 = 6
∴1 = 2

 ……なんてことをしているうち、こういうのもあることを知った。

ゲート

 潘基文(ばんきぶん)は大統領選立候補を取りやめたという。

 まあ、隣国の事だから、どうだっていいっちゃあ、どうだっていいんだが、一番「マシ」なおっさんだったからなあ……。

 そんなことで、韓国がらみのニュースに見入っていたら、崔順実(さいじゅんじつ)の一連の件の事を「崔順実(최순실)ゲート(게이트)」などというそうな。

 そういえば、汚職・疑獄のことを「なになにゲート」と言うよな、「ゲート」って言葉には何か汚職って意味があるのかな、と思って調べてみたら、もともとそんな意味はないけれども、「ウォーターゲート事件」以降、これをもじって「なになにゲート」と言うようになり、ついには「ゲート」にはそういう意味が込められ、中国語など「门(門)(Gate・Mén)」の一字で汚職・疑獄の意味も表すようにすらなってしまったのだという。

 そこから興味を覚えて、「ウォーターゲート事件って、どんなんだったっけ」と調べてみると、なんか、笑っちゃうぐらい「雑なスパイ事件」で、ニクソン大統領はあんな雑な連中の雑な仕事で任期途中で退任する破目になってしまったのだ。これだけでも前代未聞だが、国政を継承すべき副大統領が、一連の疑惑進行中にまったく別のケチな収賄事件で退任してしまっていた。その副大統領職を継承していた下院総務のフォード氏がやむなく繰り上がりで大統領を継承したが、これは「選挙ヌキで大統領になったオッサン」という、これまた前代未聞の事態になってしまったのだった。

 私は当時小学校1年生だったので、ベトナム戦争がらみの報道や、ニクソン大統領の名、ウォーターゲート事件という言葉そのものはテレビから流れてきていたし、私は大人の話に首を突っ込む変な子供だったから覚えているが、内容までは詳しく知らなかった。

レン砲

 何のことかと思ったら、蓮舫(ぶし)のようなことだそうな。

 「女による女いじめ」の様相で、結局不人気を招いているそうだ。カッカッカ……。

今度はまた一体、何を始める気なんじゃい

 この人はたしか、十年以上も前にイラクで他の人たちと3人でとっつかまって、身代金で釈放してもらって、スイーツ食ってうまいうまい言ってた活動家じゃなかったか。今度はまた、何を始めようってんだい……。

トランプ

 「嘘ニュースだ!」とか「オルタネイティブ・ファクト」とか、もう、笑っちゃうぜ。面白いからもっとやれ(笑)。

 あと、「トランプホテル」、オモロかった。

読売、最近右翼だなあ

 この前、読売の「もっと原発増設しろ」という社説にもオイオイ大丈夫かい、とたまげたが、今度もたまげた。

 軍事研究忌避論が、かえって科学者を不自由にすることにならないか、という角度の論なのだが、

 「そんなもん、軍事研究か人殺しかなんか知らんけど、どうでもエエから自由に研究させたれや」

……と言っているように見えるのであった。そりゃま、単純に言えばそうですわな。

 私は昔、読売を長いこと取っていたこともあるのだが、たしか20年くらい前だったか、妙に左翼臭いことを書くようになった時期があって、嫌になって取るのをやめたのだ。カネを払って腹を立てることほど馬鹿々々しいことはない。

 その後産経をとったが、これはなんだか、逆に右翼臭がわざとらしいからやめてしまった。

 最近まで読売はどうも左翼臭がしていてイヤだったのだが、なんだか、少しづつこういう具合になってきたなあ。

松本伊代と早見優ワロタ
上記事から引用

 京都市内のJR山陰線の線路内に無許可で立ち入ったとして、京都府警右京署は10日、鉄道営業法違反の疑いで、いずれもタレントの松本伊代さん(51)と早見優さん(50)を書類送検した。

 送検容疑は1月13日午後1時すぎ、京都市右京区嵯峨野々宮町のJR山陰線の線路内に無断で立ち入った疑い。

 松本さんは1月14日付の自身のブログで、早見さんと一緒に線路上を歩いている写真を投稿。「その瞬間踏切が鳴り、慌てて逃げる2人」などと説明していた。線路立ち入りに批判が集まったため、翌日のブログでは「お騒がせをいたしまして大変申し訳ございません」と謝罪し、記事は削除されている。

 おいおいおいおい、アラフィフのオバハン二人で何やっとんねん。歳を考えや~?(笑)。ま、他愛ないこっちゃな。

言葉
デタント

 ウォーターゲート事件の文脈に現れてくる言葉に「米ソデタント」なんてのがある。子供の頃、米ソデタントというのはよく出てきていた言葉だと思う。

 この言葉、今は使われていない。デタントというのは緊張緩和の事で、フランス語(détente)なのだそうな。かつては国際関係がたどるいろいろな「相」をパターン化して捉えたもので、その「相」の一つがデタントだ。しかし、欧米列強による国際社会支配システムが崩壊した今は、そういうパターン化した捉え方は古典的な概念になってしまい、使われていないそうな。

圧巻

 圧巻、というと見ごたえのあるスゴいモノ、というような使い方をしがちだが、違うんだそうな。昔中国の科挙で、答案を積んで提出するにあたり、最も優れた部分を一番上に載せるので、それが他の一般の部分を上から「圧している」ことから、「一番いいところ」のことを「圧巻」というようになったのだそうだ。

 だから、例えば芝居なんかを見ていて、役者が大見得を切り「ナリコマ屋ーッ!」と声がかかるような部分のことを指して「やっぱり勧進帳じゃ安宅の関が圧巻だねえ」というのは正しいが、「今回のオリンピックは圧巻だったねえ」と言うのは間違いである。

重商主義・重農主義

 国の歴史的な変化に関して、例えば、農業をしていた国が商業や経済に軸足を移して発展していく、というような「なんとなく」の理解でいると、重農→重商、という順序であるような気がするが、ヨーロッパでは重農主義の方が後で出てきた新しい形だそうである。

 つまり、商業でヨーロッパの諸王は富を得て栄えたが、その下の貴族というのは結局「地主さん」なので、ちっとも栄えなかった。ところが、フランスでは貴族中の貴族が王で、王は貴族に支えられていたことから、貴族が得をするように、つまり貴族に年貢を納めさせるための農業を重視し、それによって王自身も更なる富を得る構造を作った、という順序だ。「重商→重農」の順序なのだそうである。

(ひそみ)(なら)

 「ひそみにならう」と、つい口から出てしまいがちだが、これは謙遜して言うものである。

 故事成語としては、アンニュイ美人がちょっと顔をしかめて(眉を(ひそ)めて)歩いているのが美しかったんで、それを見たブス女が真似して((なら)って)顔をしかめて歩いたが、余計に不細工になった、という例話から、意味もヘチマもなくなんでもかんでも闇雲に真似することを「顰に倣う」と、第一義としては言う。

 これを謙遜の意味で使うというのは、「いやあ、私如き、意味も解らず真似をしているだけでして、いやいや」というような気持ちを込めて、「いえいえ、私の書道など、先生の顰に倣っているだけのものなんでして」というように使うのである。

ロカボ

 「ボカロ」、すなわち「ボーカロイド」の間違いかしらん、と思ったが、「糖質制限ダイエット」「低糖質ダイエット」のことを「ロー・カーボ・ダイエット」とも言うのだそうで、これを略して「ロカボ」なのだそうな。ははあ、痩せますか。そうですか。

セキュリティ機能要件・同じく保証要件

 恥ずかしい話ですが、セキュリティの「機能要件」と「保証要件」っていうのを、自分とこの職場のローカル用語やローカルルールだとずっと思い込んでました。

 JIS X 5070・ISO/IEC15408に定義づけられたれっきとした標準用語であることを、つい先日知りました。

 因みに、JIS X 5070-1では、「4 略語」の項に、

SAR セキュリティ保証要件(Security Assurance Requirement)
SFR セキュリティ機能要件(Security Functional Requirement)

……と記載されている。これはいわゆる「共通標準 Common Criteria」用語、とでも言うべきものだ。

 う~ん、まだまだ修行が足りんのう(笑)。

今週雑想

投稿日:
おまいう(笑)

 沖縄県知事は「法治国家ではない」と吐き捨てたそうだが、いや、それなら辺野古の判決を踏みにじるアンタでしょうが。いやほんと、まさに今はやりのネットスラング、「おまいう(お前が言うか)」である。

平和と安全

 だいぶ前からだが、この「平和」「安全」という言葉は、すっかり「危険な言葉」になってしまった。とても良い言葉なのに……。

 これは、政府やマスコミが、この良い言葉を「軍事」「戦争」などの言葉の置き換えに使うようになったからだ。

 最初のうちはよかったが、最近では直接意味が通るようになってしまったため、例えば、元々は「平和・安全」という言葉を聞くと、左のようなほのぼの画像がイメージできていた。

 ところが、最近はもう、「平和ッ!」「安全ッ!」ってメディアに出てくると、こういう画像が脳裏に浮かんでしまうのである。

 これのどこが平和で安全なのだ。

 こういう風になってしまうと、今度は本当の意味で「平和」「安全」ということを言いたいときに、これらの言葉を使ったとたん、相手が「戦争ですかッ!」「軍事ですかっ!」と、違うイメージを持ってしまうから、実に具合が悪い。

 もう、こういう、猥褻な言い換えをやめたほうがよいと思う。「国際協力法制」とかはまだいいけど、たとえ露悪的だろうと、ちゃんと「軍事法制」とか、正直に言った方がいいと思うね。

言葉
鼎立(ていりつ)

 「鼎談(ていだん)」と同じように、三者並び立つような状況を言うそうな。

(ゆるがせ)

 これで「(ゆるがせ)」と()むそうな。「粗忽者(そこつもの)」という漢語から、おのずとその意味は通る。

 この読み方、産経のコラムで見た。

 この中に、夏目漱石の文になる「明治天皇奉悼之辞(ほうとうのじ)」が引用されており、

(以下囲み内は夏目漱石「明治天皇奉悼之辞」、上の記事から引用)

過去四十五年間に発展せる最も光輝ある我が帝国の歴史と終始して忘るべからざる

 大行天皇去月三十日を以て崩ぜらる

 天皇御在位の頃学問を重んじ給ひ明治三十二年以降我が帝国大学の卒業式毎に行幸の事あり日露戦役の折は特に時の文部大臣を召して軍国多事の際と(いえど)も教育の事は(ゆるがせ)にすべからず其局に当る者()く励精せよとの勅諚(ちょくじょう)を賜はる

 御重患後臣民の祈願其効なく遂に崩御の告示に会ふ我等臣民の一部分として籍を学界に置くもの顧みて

 天皇の徳を(おも)

 天皇の恩を(おも)ひ謹んで哀衷を巻首に()

 ……とあり、そこではじめて知った。「せ」と送って「(ゆるが)せ」としてもよいようだ。

 (ちな)みに、この「忽」という字、これで「ち」と送れば「(たちま)ち」、「か」と送れば「(おろそ)か」、となる。

 また、「たちまち」の意味からは非常に小さい数の事も表すのだという。即ち、「1(こつ)」というと「10のマイナス5乗(10^{-5})」を表すのだそうな。

 この漢字の少数単位で私たちが知っているのは、普通は

  •  1()(0.1、10分の1、10^{-1})
  •  1(りん)(0.01、100分の1、10^{-2})

……ぐらいまでだが、その下には更に

  •  1(もう)(0.001、1000分の1、10^{-3})
  •  1()(0.0001、1万分の1、10^{-4})

……というのがある。「(もう)」くらいまではちょっとした大人なら知っているが、「糸」になるとだいぶ物知りの人でないと知らないだろう。

 いよいよその次にこの「(こつ)」があり、これはかなり物知りの人でないと知らない。「1(こつ)」は「10万分の1」「0.00001」「10^{-5}」のことを言う。これは「忽然(こつぜん)として……」という言葉に「非常に速く・急に」という意味があることから(けだ)()に落ちるものがある。

いっやー、暴利(ボリ)よるわァ~

投稿日:

 Raspberry Pi Zeroの続報がないなあ、などと思いついて、Amazonで検索したら、ビックリ……。

 いっやー、暴利(ボリ)よるわァ~。値段見て思わずゲヴォアッ!って、()き込んでしまったぞ。

 千円、ってならまだしも、1万円は、ないわ~。5ドルだろ、元の値段。今の円安でだってせいぜい650円だろー。

 いくらなんでも、ナイわぁ~。ビックリして思わずレビューで星一つ付けてコキ下ろしてやった

 これ、一頃結構問題になった「Amazon詐欺」の(たぐい)だよな。うっかりクリックしてしまうアホがいるわけよ、1000人に1人くらい。で、値段は表示してるんだし、買うアホも納得して買ってるわけだから、詐欺ではないわな。言ってみれば「詐欺(もど)き」。

 1000人に1人くらいいるアホを対象にしているということで、こういうのを「アホのロングテール」(下図)というわけですよ。

図 アホのロングテール
アホのロングテール

 1000人に1人ぐらいしか引っ掛からなくても、このアホな人たちは結構多い。「ロングテール」所以(ゆえん)である。Amazonは世界企業だから、買い物をする人は何千万人もいる。で、結果として絶対数はそこそこの数になる。

 くどく書くことではないが、ちょっと計算してみよう。仮に、Amazonで買い物をする人が単位時日に1000万人、そのうち1000分の1、1000人に1人の人がRaspberry Pi Zeroを買いたく思い、これらの人の中に一定の率でアホな人がおり、更にそのアホな人たちの中の20人に1人がコレに引っ掛かるとする。

 「一定の率」と書いたが、上に掲げた「アホのロングテール」の図の、「結構多くいるアホな人ゾーン」というのを、「正規分布の2σ(シグマ)よりアッチ」というふうに置くとしよう。「σ」は分散(残差自乗平均)の平方根である。

 片側2σよりアッチ、ということは、両側で4σということで、この両側4σの間には、圧倒的大多数、正規分布の場合は95.44%の人が含まれる。まあ、普通の常識人ですな。この95.44%に入らない人の中には、「突拍子もなく賢い人たち」と「信じられないくらいアホな人たち」が両方入っているので、それらを2で割ると、アホな人たちの率が出る。つまり、

\cfrac{100\% -95.44\%}{2}=2.28\%

 となって、1000人につき23人はアホな人たち、つまり「騙され予備軍」である。このアホな人たちは割合に騙されやすいから、20人に1人くらいは引っ掛かるだろう、と仮定すれば、

\cfrac{\cfrac{10000000}{1000}\cdot 2.28\%}{20}\fallingdotseq 11.4

 11.4人。商材が1万円なら、これで11万円の売り上げだ。こんなアホな商材を10個も並べておけば、それで100万円だ。魚釣りみたいなもんで、アホの豊年満作(ほうねんまんさく)である。

 数字は全部仮置き、つまり全部「仮に……」の話ではあるが、なんとなくそうだろうなあ、という気はするでしょ?

 昔は、詐欺(まが)いの商売をしようとする悪人は、アホな人を自分で探さなくちゃならなかったけど、今は、Amazonに出品して釣り糸垂らしとけば、向うから喰らい付いて来るわけですよ。

 こういうわけで、AmazonがEコマースのプラットフォームとしての地位を確立して以来、アホな人はロングテールでやって来るようになり、昔と違ってアホな人相手の商売ってのはそこそこ儲かるものに生まれ変わったのである。

 そんなあれこれを見越してるわけだから、まあ、この会社ってのは、阿漕(アコギ)ですな。私もアホの部類だから、こういう商売に引っ掛からないように、脇を締めて生きていこうと思う。

そういえば、と

投稿日:

 そういえばまだアレをやっていなかったな、と思いつく。

 まだやっていなかったな、というのは正確ではない。やるのは30年ぶりくらいかな、というと正確だ。

 アレ、というのは「マルチバイブレータ」という回路のことだ。

 そう、この「マルチバイブレータ」という回路ををもとに少しづつカスタマイズを進めていくと「2安定マルチバイブレータ」、つまり「フリップフロップ」になり、それはそのまま1ビット記憶素子となり、やがてコンピュータそのものにつながっていくのである。

 その原点の、「マルチバイブレータ」というのは下のような回路である。

一般的な非安定マルチバイブレータの回路図
非安定マルチバイブレータ

 私などは若い頃、職場でこの回路を随分と叩き込まれたもので、当時は二つのトランジスタのところが真空管になっている回路がさまざまな機材の中にまだ現役で存在した。真空管でマルチバイブレータを構成する場合はヒータ回路などを一緒に考えなくてはならないことや、電圧が高いことなどで、実際に作動させるにはもう少し複雑な配慮が必要になる。その点、トランジスタで構成すると電力も少なくてすみ、単純明瞭だ。

 回路自体の知財権等がどうなっているか、ということを今日まで知らなかったが、今ネットで少し検索してみると、Wikipediaには「イギリス人の物理学者ウィリアム・エックルスフランク・ジョーダンによって1919年に作られた」とある。ウィリアム・エックルスは1966年に亡くなっているが、フランク・ジョーダンの没年は不明である。電子回路の知財権に関して、著作権はあいまいでよくわからないが、回路配置利用権については、日本では申請登録が必要で、かつ登録後10年となっている。要するにマルチバイブレータの回路図をネットでコピーしたり利用したりする場合の知財権関係の問題点は、回路配置利用権については申請されていないから存在しないが、著作権についてははっきりせず、よくわからないということである。しかし、マルチバイブレータの回路図は、あらゆる教科書に作成者の紹介もなく掲載されているので、多分ネットに書いても大丈夫なのではなかろうか。

 さておき、この回路の動作原理は複雑で、理解するのは困難だが、動作結果や回路自体はご覧のように簡単なので、すぐに覚えてしまえる。すなわち、一方のトランジスタのベースをもう一方のトランジスタのコレクタにコンデンサをはさんで「たすき掛け」に接続し、それぞれの接続点に抵抗を全部で4つつなぎ、これを介して電源電圧を加え、最後にエミッタを接地する……、というふうに覚えるのだ。

 発振周期の計算は私は恥ずかしながら覚えていない。しかし、ネットを漁ると、

f=\cfrac{1}{T}=\cfrac{1}{ln(2)\cdot(R_2 C_1+R_3 C_2)}\fallingdotseq\cfrac{1}{0.69315\cdot (R_2 C_1+R_3 C_2)}

……と、すぐにその式は出てくる。つまり、コンデンサふたつと、真ん中の抵抗ふたつで周期が決まる。両側の抵抗ふたつはトランジスタに流す電流を決めると思えばよい。この両側二つの抵抗をLEDの電流調整抵抗とみなせば、LEDはここに直列につなげばよい。

 2秒に1回くらい、つまり0.5HzくらいでLEDをチカチカさせる場合を考える。とりあえず手持ちの部品で47μFの電解コンデンサがいくつかあるのでそれを使いたい。左右とも同じ周期で発振させるなら、この場合はR2とR3、C1とC2は同じ容量のものを使えばよい。なので、先ほどの式は

f=\cfrac{1}{T}=\cfrac{1}{ln(2)\cdot 2RC}=\cfrac{\frac{1}{ln(2)\times 2}}{RC}\fallingdotseq\cfrac{0.72135}{RC}

……というふうに簡単になる。

 手持ちの電解コンデンサ47μFで、0.5HzくらいのLチカをやりたいときの抵抗は、

R=\cfrac{0.72135}{0.5\cdot 47\times10^{-6}}\fallingdotseq 30695.74468\fallingdotseq 31k\Omega

……というふうになる。

 私のガラクタ箱の中に入っている一番近い値の抵抗は、10kΩだ。代わりにこれを使うと、結局、

f=\cfrac{0.72135}{RC}=\cfrac{0.72135}{10k\Omega\cdot47\mu F}=\cfrac{0.72135}{10000\times47\times10^{-6}}\fallingdotseq1.535(Hz)

……というわけで、2秒に3回くらいチカチカするものが作れる。

 とりあえず、C1とC4、つまり両側の電流調整用には330ΩとLEDを直列に入れる。

 適当なトランジスタがないので、買う。NPN型の定番品に2SC1815というのがあり、秋葉原千石電商で10個入りのパケットが150円だ。

IMG_3294

 この「2SC1815」は汎用的に使われている石なので、さまざまな電子工作にもよく登場している。余分に持っていて損はないし、10個で150円ならお金を使った気にすらならないので、一袋買っておくのは正解だと思う。

 ブレッドボードに並べれば、次のようになる。

IMG_3299

 上のほうに3端子レギュレータを設け、ACアダプタの13Vを5Vに落としている。切り欠きのあるトランジスタふたつ、切り欠きに向かって左からエミッタ・コレクタ・ベースなので、――昔はこれを「E-C-B」とも「エ・ク・ボ」とも覚えたものであった――ベースから黄色いジャンパで「たすき掛け」になっているところがよくわかる。R1・R4が下のほうの抵抗で、茶・黒・橙(1・0・3、10×10の3乗)の10kΩであることが見て取れる。

 動かすとこんな感じである。

 次に、この「Lチカ周波数」をできるだけ正確に測ってみよう。私はオシロスコープなど持っていない。そこで、LEDの電流調整抵抗の後に直列にArduinoのデジタル入力をつなぎ、LOW~LOWの間をμ秒単位で計れば、周波数がわかるわけだ。電源も5Vなので、ちょうどよい。

 スケッチをこのように書き……

//
//  MB2f.ino
//    非安定マルチバイブレータの周波数を測る。
//    27.08.23(日) 1400~
//    佐藤俊夫
//
#include <stdio.h>
//
const int MB = 2;  //  デジタル2番ピン
//
void setup() {
  pinMode(MB, INPUT);
  Serial.begin(9600);
}

void loop() {
  static unsigned long int prevtime = 0;
  static int prevstatus = HIGH;
  int nowstatus = digitalRead(MB);
  if(nowstatus != prevstatus){
    if(nowstatus == LOW){
      unsigned long int time = micros() - prevtime;
      float f = 1000000.0 / (time);
      char s[32], sf[32];
      sprintf(s, "t = %ld microsec, f = %sHz", time, dtostrf(f, 5, 3, sf));
      Serial.println(s);
      prevtime = micros();
    }
    prevstatus = nowstatus;
  }
}

 それから、このように繋ぐ。

IMG_3301

 Arduinoのシリアルモニタで観測すると、波長から周波数が計算されてくる。

非安定マルチバイブレータ周波数測定

 2.062Hzとなっているから、最初の計算の1.5Hzからすると、だいぶ誤差があるが、CR回路の発振なんて、こんなもんである。

 さて、この「非安定マルチバイブレータ」は、回路にコンデンサが含まれていることにミソがある。ふたつのコンデンサが入っているからその充放電の働きにより発振し、放っておいても時間ごとに切り替わるのである。

 そこでこのコンデンサをとっぱらい、少し回路の配置を変える。

 そうするとアラ不思議、状態を保持する1ビットの記憶素子、「フリップフロップ」になるのである。

フリップフロップ(2安定マルチバイブレータ)
フリップフロップ

 この場合、トランジスタのベースから出したスイッチを押すたび、状態が切り替わる。

 ブレッドボードに組むとこうなる。

IMG_3302

 動かしている様子である。

 ボタンを操作するたび、光っているLEDが代わる。二つの状態のいずれかを保持しているということであり、それが1ビットの記憶ということである。2安定マルチバイブレータが1ビットのメモリーだということがここからもわかる。

お稽古

投稿日:

 7セグメントLEDのお稽古をする。意味のあるなしはどうだってよろしい。レッツゴー。

 私は古株ぶっているが、実は若い頃に7セグLEDを扱ったことがない。子供の頃の電子工作はもっぱらラジオなどのトランジスタ回路、長じてからは仕事関係で5極真空管やマイクロ波の発振管などを扱っていた。

 数値表示のためには、その頃の仕事関係では「ニキシー管」という数値表示のための真空管を扱っていた。これは放電管で、数字の形をした陰極が赤く光るものだ。

 そういうわけで、7セグLEDを知らないのである。いや、無論、当時から7セグメントLEDは世の中にあったが、私の職場が特殊だったのである。

 で、これが昨日秋月電子八潮店で買ってきた、1個60円の7セグLEDである。

IMG_3234
IMG_3236
OSL10561-IRA

 さて、まずは点灯からだ。データシートから、抵抗と電流っ。

 各素子I_F = 20mA, V_F = 2.1V……とあるから、V_0 = 5Vとして、

I_R = \frac{V_0 - V_F}{I_F} = \frac{5 - 2.1}{20mA} = 181.25\Omega

……まず、200Ωばかりつけておいてやればよいのだろう。この前買った集合抵抗の手持ち、8素子9ピンで330Ωのがあるから、それを付ければ多少暗いが10mA前後で光るだろう。

 さっそく、全点灯で光らせてみよう。単に電源をくれてやって、抵抗に結線するだけだ。

7セグLED全点灯
回路図

 光らせてみると、計算上の抵抗の倍近い抵抗値なのに、なかなかどうして、結構明るく光る。

IMG_3237
単純全点灯で光らせてみたところ

 次に、Arduinoをつないで、数字を表示させる。全点灯で電流を測ってみると67mAほど流れているので、電源はこのまま別建てのほうがいいだろう。

 アノードコモンのLEDであるから、カソード側で制御しなければならない。集合抵抗では一本づつ制御できないので、330Ωの電流制御抵抗をバラで8本とりつける。それぞれの足をArduinoのデジタル2ピンから9ピンまで取り付ける。

 スケッチをこう書く。点灯のパターンは配列に書くのが手早いだろう。

//
//  7segmentLED_1.ino
//    7セグメントLEDを1個動かす。
//    27.08.10(月) 1300~
//    佐藤俊夫
//
//    LED「OSL10561-IRA」
//    LED 1 -> Digital 2
//    LED 2 -> Digital 3
//    LED 4 -> Digital 4
//    LED 5 -> Digital 5
//    LED 6 -> Digital 9
//    LED 7 -> Digital 8
//    LED 9 -> Digital 7
//    LED10 -> Digital 6
//
void setup() {
  for(int i = 2; i <= 9; i++){
    pinMode(i, OUTPUT);
  }
}

void loop() {
  for(int i = 0; i <= 9; i++){
    lighting(i);
    delay(1000);
  }
}

void lighting(int n){
  const int pat[10][8] = {
    { LOW,  LOW,  LOW, HIGH, HIGH,  LOW,  LOW,  LOW},  //  0
    {HIGH, HIGH,  LOW, HIGH, HIGH, HIGH, HIGH,  LOW},  //  1
    { LOW,  LOW, HIGH, HIGH,  LOW, HIGH,  LOW,  LOW},  //  2
    {HIGH,  LOW,  LOW, HIGH,  LOW, HIGH,  LOW,  LOW},  //  3
    {HIGH, HIGH,  LOW, HIGH,  LOW,  LOW, HIGH,  LOW},  //  4
    {HIGH,  LOW,  LOW, HIGH,  LOW,  LOW,  LOW, HIGH},  //  5
    { LOW,  LOW,  LOW, HIGH,  LOW,  LOW,  LOW, HIGH},  //  6
    {HIGH, HIGH,  LOW, HIGH, HIGH,  LOW,  LOW,  LOW},  //  7
    { LOW,  LOW,  LOW, HIGH,  LOW,  LOW,  LOW,  LOW},  //  8
    {HIGH,  LOW,  LOW, HIGH,  LOW,  LOW,  LOW,  LOW}   //  9
  };
  int i = 0;
  for(i = 0; i <= 7; i++){
    digitalWrite(i + 2, HIGH);
  }
  for(int i = 0; i <= 7; i++){
    digitalWrite(i + 2, pat[n][i]);
  }
}

 アノードコモンなので、論理は負論理だ。

 Arduinoとブレッドボードをこういうふうにする。

IMG_3238

 動かすと、ゆっくりカウントアップする。

引き続きLチカ

投稿日:

 引き続きLEDで遊ぶ。

 100円ショップのプラスチック・ビーズにLEDを埋め込むという武蔵野電波のマネはなかなか楽しく、それをたくさん作ったのだが、この前のやり方だといまいち個数が少なく、寂しい感じが否めない。

IMG_3193
この前のLED生け花

 それはなぜかというと、小さいブレッドボード上に電流制御抵抗をLEDごとに付けようとすると、どうしてもLEDか抵抗のどちらかを「ラインまたぎ」に横向けにしなければならず、最低2ラインが消費されてしまうからだ。このブレッドボードだと、電源回路を入れると、どうしても5個しかLEDが配置できない。

どうしてもこうなる
IMG_3195

 ブレッドボードの中身は、タテのラインが下のように一列づつ内部で接続されており、真ん中の横一文字の仕切りで分けられている。抵抗かLEDのどちらかしか真ん中をまたげないから、どちらかは横向きになるのである。

ブレッドボードの中身の結線状況
ミニブレッドボード

 そこで、便利なものがある。「集合抵抗」だ。

集合抵抗
IMG_3203

 これは、抵抗を集めてワン・パッケージにしたものだ。この写真のものは、「8素子9ピン」というもので、内部はこうなっている。

集合抵抗の回路
集合抵抗の内部

 秋葉原千石電商なら、本店地下の、レジから一番遠い、奥の抽斗で売られている。ひとつ20円だ。

 表面にはカラーコードではなく、「103」等と数字が刻まれている。これはセラコンの読み方と似ていて、「103」であれば 10\times 10^3=10k\Omega である。今回は「331」、すなわち33\times 10^1=330\Omega のものを買ってきた。

 足のピッチはちょうど2.54mmなので、ブレッドボードにピッタリ挿すことができる。これを使うと、ブレッドボード上、LEDと抵抗の組み合わせで2ピッチ消費していたところを1ピッチですませることができる。

集合抵抗を使うと1ピッチですむ
IMG_3202

 こうすると、LEDは真ん中の仕切りをまたぐだけでよいから、LEDビーズの花を8個植えることができる。

IMG_3207

 紙コップに活けると、前回より多少華やかになった。

IMG_3200

 さて、LEDビーズが増えたので、これを16個ほど量産し、「TLC5940NT」とArduinoの回路に取り付けてみよう。スケッチやブレッドボードは前に試したのと同じでいい。

IMG_3212

 動かすとこんな感じだ。

 パルス幅変調がうまくかかって、1個1個のLEDの消え具合になかなか余韻があってよい。また、よく見ていただくと、赤いビーズが必ずしも赤く光るわけではなく、緑や青に変化して光るのも、面白いところだ。




耽るLチカ

投稿日:

 LEDは半導体であるから、電球と違って、光り始める前は抵抗は無限大であり、電流は流れない。ところが電圧がVfを超えて光り始めたら最後、抵抗がなくなって電源をショートさせた状態でぶっ飛び、自分自身も壊れる。従って必ず抵抗を一緒にくっつけてやるのだ。

 その抵抗を選ぶのは簡単で、基本的に E = I\cdot R という、この式のみでよい。LEDを買ってくると、流すべき電流値(If)、光り始める電圧(Vf)がどこかに書いてあるから、それに従って計算する。すなわち、

R = \frac{V - Vf}{If}

ここに、

V 自分が用意する電源の電圧
Vf 買ってきたLEDのVf(順方向電圧)、つまり光り始める電圧
If 買ってきたLEDのIf(順方向電流)、つまり光らせるために必要な電流

 ただ、抵抗は入手可能な数値が決まっており、そのものピタリという抵抗値のものは売っていない。なので、計算した値と一番近い抵抗を選び、その抵抗値で再び電流を計算して、買ってきたLEDのIfを超えていないかどうかを確かめる。

 これが、簡単な計算ではあるけどいちいち面倒くさい。

 それでまあ、抵抗を選ぶのにこういうスプレッドシートを作る。

 それから、これを使ってみよう。

IMG_3181

 これは、「武蔵野電波のプロトタイパーズ第15回『TLC5940で16個のLEDを遊ぶ』」で取り上げられている「TLC5940NT」というICだ。千石電商本店2階、入って左側の、一番奥のほうの抽斗で売られている。武蔵野電波のページでは400~700円とされているが、千石電商の店頭売りでは390円である。

 Arduinoで使うには、GitHubにあるライブラリをダウンロードし、zipを展開して出てくる「tlc5940」というディレクトリをArduino IDEのインストールディレクトリの下にある「libraries」の中にコピーすればよい。

 スペックシートはコレだが、スペックシートを見るより、Arduinoにライブラリを入れると出てくるようになるサンプルスケッチの「BasicUse」を見た方が分かり易いと思う。こんな風にサンプルは書かれている。

/*
    Basic Pin setup:
    ------------                                  ---u----
    ARDUINO   13|-> SCLK (pin 25)           OUT1 |1     28| OUT channel 0
              12|                           OUT2 |2     27|-> GND (VPRG)
              11|-> SIN (pin 26)            OUT3 |3     26|-> SIN (pin 11)
              10|-> BLANK (pin 23)          OUT4 |4     25|-> SCLK (pin 13)
               9|-> XLAT (pin 24)             .  |5     24|-> XLAT (pin 9)
               8|                             .  |6     23|-> BLANK (pin 10)
               7|                             .  |7     22|-> GND
               6|                             .  |8     21|-> VCC (+5V)
               5|                             .  |9     20|-> 2K Resistor -> GND
               4|                             .  |10    19|-> +5V (DCPRG)
               3|-> GSCLK (pin 18)            .  |11    18|-> GSCLK (pin 3)
               2|                             .  |12    17|-> SOUT
               1|                             .  |13    16|-> XERR
               0|                           OUT14|14    15| OUT channel 15
    ------------                                  --------

    -  Put the longer leg (anode) of the LEDs in the +5V and the shorter leg
         (cathode) in OUT(0-15).
    -  +5V from Arduino -> TLC pin 21 and 19     (VCC and DCPRG)
    -  GND from Arduino -> TLC pin 22 and 27     (GND and VPRG)
    -  digital 3        -> TLC pin 18            (GSCLK)
    -  digital 9        -> TLC pin 24            (XLAT)
    -  digital 10       -> TLC pin 23            (BLANK)
    -  digital 11       -> TLC pin 26            (SIN)
    -  digital 13       -> TLC pin 25            (SCLK)
    -  The 2K resistor between TLC pin 20 and GND will let ~20mA through each
       LED.  To be precise, it's I = 39.06 / R (in ohms).  This doesn't depend
       on the LED driving voltage.
    - (Optional): put a pull-up resistor (~10k) between +5V and BLANK so that
                  all the LEDs will turn off when the Arduino is reset.

    If you are daisy-chaining more than one TLC, connect the SOUT of the first
    TLC to the SIN of the next.  All the other pins should just be connected
    together:
        BLANK on Arduino -> BLANK of TLC1 -> BLANK of TLC2 -> ...
        XLAT on Arduino  -> XLAT of TLC1  -> XLAT of TLC2  -> ...
    The one exception is that each TLC needs it's own resistor between pin 20
    and GND.

    This library uses the PWM output ability of digital pins 3, 9, 10, and 11.
    Do not use analogWrite(...) on these pins.

    This sketch does the Knight Rider strobe across a line of LEDs.

    Alex Leone <acleone ~AT~ gmail.com>, 2009-02-03 */

#include "Tlc5940.h"

void setup()
{
  /* Call Tlc.init() to setup the tlc.
     You can optionally pass an initial PWM value (0 - 4095) for all channels.*/
  Tlc.init();
}

/* This loop will create a Knight Rider-like effect if you have LEDs plugged
   into all the TLC outputs.  NUM_TLCS is defined in "tlc_config.h" in the
   library folder.  After editing tlc_config.h for your setup, delete the
   Tlc5940.o file to save the changes. */

void loop()
{
  int direction = 1;
  for (int channel = 0; channel < NUM_TLCS * 16; channel += direction) {

    /* Tlc.clear() sets all the grayscale values to zero, but does not send
       them to the TLCs.  To actually send the data, call Tlc.update() */
    Tlc.clear();

    /* Tlc.set(channel (0-15), value (0-4095)) sets the grayscale value for
       one channel (15 is OUT15 on the first TLC, if multiple TLCs are daisy-
       chained, then channel = 16 would be OUT0 of the second TLC, etc.).

       value goes from off (0) to always on (4095).

       Like Tlc.clear(), this function only sets up the data, Tlc.update()
       will send the data. */
    if (channel == 0) {
      direction = 1;
    } else {
      Tlc.set(channel - 1, 1000);
    }
    Tlc.set(channel, 4095);
    if (channel != NUM_TLCS * 16 - 1) {
      Tlc.set(channel + 1, 1000);
    } else {
      direction = -1;
    }

    /* Tlc.update() sends the data to the TLCs.  This is when the LEDs will
       actually change. */
    Tlc.update();

    delay(75);
  }

}

 この最初のほうのコメントにアスキー・アートで書かれている図を見て結線するとよい。こんな感じだ。

IMG_3185

 LEDは秋葉原・千石電商の隣の店、「akiba LEDピカリ館」で売っていた10個入り300円の白色LEDで、Vfが3.0V~3.4V、Ifが20mAとある。電源が5Vならば100Ωばかり抵抗を付けてやればいい理屈だが、全部点灯させるとArduinoがダメになってしまうから、さらに絞って10KΩつけてやる。

 コンパイルして動かすとこうなる。

 10kΩでもこれくらい明るい。

 このICを使うと、パルス幅変調の幅も、Arduinoが256段階であるのに比べ、4096段階と格段に細かくなる。

 アレンジを加えてみよう。昨日買ってきたポテンショメータを使う。アナログの4番ピンと5番ピンに50kΩのポテンショメータと10kΩの抵抗をつなぎ、それぞれを強さと速さにして、「尾を引いたみたいに」明るさ制御をする。

 ポテンショメータの回路はこうする。

IMG_3191

 図の「E1」をアナログ入力で読めばよい。ポテンショメータのつまみの位置は、次の計算でR2を求めれば明らかになる。

E_{0} = I_{0}\cdot(R_{1} + R_{2})
I_{0} = \frac{E_{0}}{R_{1} + R_{2}}…①
I_{0} = \frac{E_{1}}{R_{2}}…②
① = ②
\frac{E_{0}}{R_{1} + R_{2}} = \frac{E_{1}}{R_{2}}
E_{0}\cdot R_{2} = E_{1}\cdot R_{1} + E_{1}\cdot R_{2}
R_{2}(E_{0} - E_{1}) = E_{1}\cdot R_{1}
R_{2} = \frac{E_{1}\cdot R_{1}}{E_{0}-E_{1}}

 組み付けるとこうなる。

IMG_3187

 動かすとこんな感じ。

 スケッチはこんな感じ。

//
//  wPotentio2tlc5940.ino
//    ポテンショメータとTLC5940でLチカ
//    27.08.02(日)0900~
//    佐藤俊夫
//
#include "Tlc5940.h"
//
const float
  R1 = 10000.0,     //  ポテンショメータ前の抵抗10kΩ, 
  E0 = 5.0,         //  電源電圧5V, 
  MAXVR = 50000.0;  //  ポテンショメータの最大抵抗
const unsigned int   VR1 = 4, VR2 = 5;  //  ポテンショメータはアナログピンのA4・A5
const unsigned int MAX_LED = 15;  //  LEDは0~15の16個
//
void setup()
{
  Tlc.init();
  pinMode(VR1, INPUT);
  pinMode(VR2, INPUT);
}

void loop()
{
  float vr1 = 0.0, vr2 = 0.0, e11 = 0.0, e21 = 0.0;
  static unsigned int topLed = 0, tailLen = 10;
  e11 = analogRead(VR1) * (5.0 / 1024);
  e21 = analogRead(VR2) * (5.0 / 1024);
  vr1 = (e11 * R1) / (E0 - e11);  //  明るさ
  vr2 = (e21 * R1) / (E0 - e21);  //  速さ
  if(++topLed > MAX_LED + tailLen)  topLed = 0;
  Tlc.clear();
  int bright = constrain(fmap(vr1, 0.0, MAXVR, 0, 4095), 0, 4095);
  Tlc.set(topLed, bright);
  for(int i = topLed - 1; i >= 0; i--){
    bright -= (4096 / tailLen);
    if(bright < 0) bright = 0;
    Tlc.set(i, bright);
  }
  Tlc.update();
  unsigned int delayTime = constrain(fmap(vr2, 0.0, MAXVR, 100, 10), 10, 100);
  delay(delayTime);
}
//
float fmap(float x, float in_min, float in_max, float out_min, float out_max) {
  //  もともとの「map()」がlong int型でこの用途に合わないので、float型を定義
  return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;
}

1/fゆらぎでLチカ

投稿日:

 さて、他の人もよくやっている「1/fゆらぎのLチカ」を、私もマネしてやってみる。

 こちらこちらのサイトを参考にさせていただく。よく使われるのはこの「間欠カオス法」だそうである。

間欠カオス法
0.0\leqq x\leqq 1.0として
x<0.5のときx=x+2x^2
x\geqq 0.5のときx=x-2(1-x)^2

 ただし、参考にさせていただいた各サイトによると、この間欠カオス法は、0.0付近や1.0付近に値が貼り付き易いので、0.0や1.0に近くなったら乱数を入れてやるとよいとのことである。実際に試すと、たしかに、長時間ちらつきがなくなったり、消えたままになったりしやすい。そこで、そうなったときに乱数を入れ、中間付近の適当な輝度で光らせるようにしてある。

 青色要素を少なくして、ろうそくの色合い風なちょっと黄色味がかった色にした。

//
//  f1Fluctuation.ino
//    1/fゆらぎでLチカ
//    佐藤俊夫
//    27.06.28(日)1700~
//
const int R = 9, G = 10, B = 11;
//
void setup() {
  pinMode(R, OUTPUT);
  pinMode(G, OUTPUT);
  pinMode(B, OUTPUT);
}

void loop() {
  int f = 0.0;
  
  f = f1Fluctuation();
  analogWrite(R, 255 - f);
  analogWrite(G, 255 - f);
  analogWrite(B, 255 - (f * 0.2));
  delay(20);
}


int f1Fluctuation(){
  static float x = 0.1;
  if(x < 0.5){
    x = x + 2 * x * x;
  } 
  else {
    x = x - 2 * (1.0 - x) * (1.0 - x);
  }
  if(x < 0.05 || x > 0.995){
    x = random(10, 90) / 100.0;
  }
  return((int)(x * 255));
}



1億倍で言わないと消滅する。

投稿日:

 以前、「中国人13億人と日本人1億3千万とが全力で殺し合いをしたら、秒殺で日本人全滅。戦い方で工夫をして勝つなら、あらゆる能力が100倍優れてないとダメ」みたいなことを、ランチェスターの二次則にからめて書いた。

 簡単な理屈で、100倍というのは勢力比の自乗である。

 もう一度書くならこういうことだ。ランチェスターの2次則によれば、損耗は勢力比の自乗で作用する。

{B_0}^2 - {B_t}^2 = E({R_0}^2 - {R_t}^2)

 ここに、
  B 青軍
  R 赤軍
  B0、R0:  青・赤両軍の最初の兵力
  Bt、Rt:  ある同じ時点での青・赤両軍の残存兵力
  E:  兵力の質の比。赤軍の質が青の倍であれば2、半分であれば0.5。

 式を変形すると、例えば、

{B_t = \sqrt{{B_0}^2 - E({R_0}^2 - {R_t}^2)}}

 このR0に日本の人口、Rtにはゼロを、B0に中国の人口、Eに1.0を代入すれば、つまり「日本人が全滅を期して捨て身の特別攻撃をしかけて、中国にどれだけの損耗を強いることができるか」という冷厳な計算となる。

 言うまでもないが、この計算はするだけムダだ。それでもあえて計算してグラフを描けば、こうなる。

Photo_3

 日本人の人数の、10分の1の損耗すら、与えることが出来ない。一人十殺どころか、10人がかりで1人殺すこともできないのである。

 これを互角にするには、兵力の質の比「E」を高めることだが、これも計算するだけムダである。100倍以上という数字が出るだけだ。

E=\cfrac{{B_0}^2 - {B_t}^2}{{R_0}^2 - {R_t}^2}

 この式にそれぞれ中国と日本の人口、互角となるようにBtとRtにゼロを代入すれば、約106という途方もない数字になってしまう。

 これが、先日私が書いた、じつにお粗末で簡単な理屈である。だがしかし、「殺し合い」なぞと物騒な書き方をしたから、どうにも老幼婦女子に刺激が強すぎたと言おうか、まず「穏当でなかった…」のは否めない。

 だが、殺し合いまでは行かない、例えばあることに関する意見や主張、ということではどうだろう。

 「昭和10年~20年(1935年~1945年)までをリアルに過ごした全ての日本人は悪魔で殺人鬼で血も涙もない許すべからざる鬼畜で、レイプ大好きな人類の敵だった」

…ということを、13億人の中国人が全員で言い、そして、かたやの日本人の、まあ、せいぜい100万人ほどのかわいい勢力が、小さな声で

「そ、そんなことないよぉ…当時の日本人にだって、いい人はたくさんいたんだよぉ…」

と、ボソボソ口ごもるとする。まあ、大声の大合唱と、小さな声のつぶやきとの戦いだ。そうすると、どうなるのだろう。

 この際、10億ナンボという土台に対して、朝鮮半島の5、6千万なぞ、計算の埒外、誤差というか、ゴミのようなものであることをあらかじめ言っておく。

 13億人の中国人全員が全力で100%の力を出し切ってこんなことを言うというのも、非現実的だ。中国人の中にだって、「いやいや、それは言い過ぎだって。日本だって、当時当時の情勢ってものもあったわけだから」と、一定の理解を示す知性のある人も少なからずいるだろう。だから、方程式の入力に「13億」と叩き込むのはよろしくない。また、全員が100%で主張するというわけでもなく、かなりラジカルな活動家でも、1%ぐらい「日本人だって人間なんだから」と心の片隅で思っていなくもないだろう。そういったところをあれこれ差し引きして、

「13億人中の10億人が全力で『A』と主張する」

…とでもしようではないか。

そして対する日本が、「100万人のかわいい勢力が小さな声で言う」というところを置き換えて

「10万人の勢力が全力で『非A』と主張する」

とでもしようではないか。

 先日の私の遊びのように、13億対1億3千万をランチェスターの二次則に代入するなど、代入する前からわかりきった馬鹿馬鹿しいことだった。それが10億対10万である。これは馬鹿馬鹿しいを通り越して頭脳の目方を疑われるような無意味なことだ。

 それでも、あえてグラフを描こう。

Photo_4

 横軸の、中国の10億が、まったく変化していないことに注目しよう。実は変化しているのだが、桁が小さすぎて表示できないのだ。つまり、ただの一人たりと、日本の意見に同意してもらうことなど出来ない。

 では、これを互角にするにはどうしたらよいのだろう。互角にするためには、交換比Eを計算すればよい。

E=\cfrac{{B_0}^2-{B_t}^2}{{R_0}^2-{R_t}^2}=\cfrac{10^2}{0.001^2}=\cfrac{100}{0.000001}=100000000

 1億倍である。

 こちらの主張を、日本人特有のおくゆかしさでもって、「いつかはどちらが正しいかをちゃんと天が見定めてくれる」とわけしりぶって小さな声で言っていることには、数値上の意味はまったくない、ということだ。

 正しいとか、正しくないとかはこの際置こう。おじいちゃんおばあちゃん、ひいおじいちゃんひいおばあちゃん、我々を産み育てた父祖の世代が、「クズでカスで大便みたいなゴミだった」という認定が、世界的定説になるかならないか、それをどうするのかということなのだ。

 それを互角に保つには、キチガイ右翼の街宣車のボリュームがやかましいなどという、そんなどころの騒ぎではまったくダメで、「1億倍の強度でそれを言わなければならない」ということである。

 「1億倍の強度で言う」ということは、簡単なことではない。これは例えではないからだ。

 例えではない、ということはどういうことか。具体的に書けば、中国人一人がネットに

「日本カス。死ね。」

…と8文字ほど書いたら、互角に対抗するために、10万人の日本側は

「日本はよい国です日本はよい国です日本はよい国です日本はよい国です日本はよい国です日本はよい国です日本はよい国です日本はよい国です

~(中略)~

日本はよい国です日本はよい国です日本はよい国です日本はよい国です日本はよい国です日本はよい国です日本はよい国です日本はよい国です」

…と、8億文字ほどの情報をネットに流せ、ということなのだ。そうしないと、「日本人は昔から罪深い糞でアホでカスだった」という認定が、朝夕に迫るのである。

 そんなことは、到底できることではない。