2023年1月1日日曜日

 Новым годом 2023

見るべきものがない当blogでありますれば、犬のナントカを踏んでしまったという程度の後悔と共にご笑覧戴ければ、コレ幸いであります。

表題の「Новым годом 2023」は、ロシア語で「新しい年2023」という意味であります。

目下、ウクライナ情勢では、日本の国民の多くがウクライナの平和を望んでいる所です。
更には、多くの国会議員も「ウクライナ共闘」と言っております。

そして、首相は「今日のウクライナ情勢は、明日の日本国」として、北朝鮮のミサイル実験を非難し「反撃能力」のため、ミサイル購入と、防衛費増額の政策を打ち出しました。

斯様に、ウクライナへの支援をしない人々は「平和を望まない者」、「非国民」というレッテルを貼られるかの様に思われ、多くの日本国民はウクライナ支援への入れ込んでおる所であります。

ウクライナ情勢では、ロシアが戦車などを送り込んでウクライナを蹂躙していており、徐々にウクライナの国土を侵食しているとの報道です。
そこでウクライナ側は、NATO諸国から軍事物資の提供を受け、国土防衛としてロシア側へ反撃を繰り返しております。

ロシアが制圧した地域では、住民選挙が行われ、ロシア領への編入を決議したそうですが、ウクライナ側にしてみると、これは不正選挙としていて、未だにロシア側への攻撃を欠かしておりません。

ウクライナ情勢では、ウクライナ側の国土防衛という「物語」があり、そこへ日本人の「防衛」という意識を刺激しているのかも知れません。
そこで、北朝鮮のミサイル実験を非難し、反撃能力を充実させるという方策。
反撃能力は、(敵)ミサイルが発射されたら、その策源地へ反撃するということでありましたが、発射されたら、ミサイル発射台はカラになっているので、そこへ反撃しても無意味であり、更に踏み込んで、ミサイルが発射されようとしたら「打ち出す前に反撃する」という所まで想定しているそうです。
その「打ちそうだぞ ?」という準備情報は、恐らくアメリカからの偵察衛星の観測情報に依るのでしょう。

一応、北朝鮮のミサイル実験に対する反撃能力という想定の様子ですが、反撃能力と言ってもミサイルには意思があるわけではないので、例えば中国やロシアにまで飛ばす事はできそうです。

こうした「反撃能力」というものが、アメリカの恣意的な運用によって先制攻撃の具にされるのは避けねばならないのですが、果たしてどうなるのか ?

表題を「(Поздравляю) с Новым годом 2023」、とすると「新年おめでとう 2023」になるのだそうですが、ウクライナ情勢を鑑みて、おめでとうに相当する (Поздравляю) с を取り除いた次第ですが、だったら、ロシア語で書かなくても良さそうなものであります。

しかし、ロシアがウクライナ侵攻したという「物語」に、極東の本邦で、どこまで入れ込んだらいいのか、という疑問があります。
ロシアがウクライナ侵攻をしていると伝えられますが、未だにロシア側では「特殊軍事作戦」と位置づけております。それは「戦争」というものではないらしい。ウクライナの東部地域がロシアに制圧された、ウクライナはそこを奪還するとしているのですが、細かい背景は色々とあるそうです。

極東の島国の住民としては、ウクライナに平和が訪れる様にと祈念するのはいいことではありますが、「共闘」というのはどうなのか ? と。「欧州の情勢極めて複雑怪奇なり」です。
ウクライナのゼレンスキー大統領は、停戦を交渉するでもなく「国土奪還」と繰り返しております。まだまだウクライナに平和が訪れる兆しはありません。

そんな國と、いい気分で「共闘」などと言っていたら、何処へ連れて行かれるのか判ったものではありません。無責任なようですが、当面、静観するのが良さそうなところです。

2022年12月13日火曜日

 NAOCOさんのホームページをみて

久しぶりに、TI-84 CE のAmazonページをみたら、いつの間にやら「python」になっておりました。

ref. [最新]TI-84Plus CE Python日本語マニュアル付き[入門,76p][正規輸入元][保証書付き]
https://www.amazon.co.jp/Texas-Instruments-TI-84-%E3%82%B0%E3%83%A9%E3%83%95%E9%9B%BB%E5%8D%93-%E6%AD%A3%E8%A6%8F%E8%BC%B8%E5%85%A5%E5%85%83/dp/B07FX4WNNZ/ref=sr_1_4?m=AUGV0LKUMT9L3&marketplaceID=A1VC38T7YXB528&qid=1666636776&s=merchant-items&sr=1-4

そこで、NAOCOさんのホームページを見に行くと、Nspire CX IIのpython対応が進められていると。

ref. python - NAOCO.com
https://www.naoco.com/python/python.htm

Nspire CX II のpython 対応も驚きですが、製品一覧にようやく TI-84 CE python ed. が登場した模様。

ref. Scientific Calculator - NAOCO.com
https://www.naoco.com/calc.htm

Nspire CX IIでは、以前からファーム更新でpythonが追加になるようでしたが、日本総代理店で公開情報が出ていて、しかも日本語マニュアルまで付くというのは朗報であります。

Nspire CX IIは、グラフ電卓の中ではトップの機能と思われます。
CAS版については、更にCASも導入されている。
そして、python機能が導入され、グラフ電卓マニアは Buy Now ! なのだと思うのであります。

その昔、当方がTI-83 plusを購入した時は、上位機種のTI-100だったか、Derive電卓があったのですが、値が張るので、泣く泣くTI-83+ を購入したのですが、それでもTI-83+ は、とても勉強になったものです。
特に、正規分布などの推計機能がとても勉強になったものでした。
この頃の高機能電卓製品には、製本されたマニュアルが付録していて、これを読むだけでも勉強になったのです。

今般、Nspire CXには、製本された日本語マニュアルが付録するそうですが、惜しむらくは簡易版というところでしょうか。
しかし、それも電卓製品の機能向上により、それに見合うだけのマニュアルを作るとなると、足が出てしまうのかも知れません。電子化されたマニュアルの提供によってコストダウンをはかるのは、今日的なソリューションと言えそうです。

で、Nspire CXは、元々は大変に高機能な製品であり、pythonまで搭載されたので、両手を挙げて歓迎したいのですが、今日の円安状況から、価格が徐々に上がりつつあります。
また、NAOCOさんでの python 正式対応の報もあり、Amazon JPでは在庫が無い状況であります。

あーあ、欲しいなァ ... しかし、当方はマニアというほどのモノでもなく、ゲルピン状況なので、指を加えて ... トホホ。



2022年10月28日金曜日

「やさしい時代」の計算

 先日、つぎのblog様をみまして、驚いちゃったのヨ。

ref. PEMDAS / BODMAS - 数学も英語も強くなる! 意外な数学英語 Unexpected Math English
http://math-eng.blogspot.com/2019/05/pemdas-bodmas.html


なんでも、2^3^2 の計算の結果が、Wolfram Alpha と TI-84 plusでちがーう値になるのだとか。ウーム。

いくつかの計算資源で試してみましたヨ。

  • fx-CG50

2^3^2 とキーを叩くと、数式表示モードでは「2の肩に3が、更に3の肩に2が乗る」表示になります。
これで計算すると、512 という値が返りました。うまく出来ております。
一方、1行表示モードで計算すると、驚いた事に 64 になるのですネ。
これは、TI-84 plusの計算式に寄せているということなのか ?
 

  • Numworks電卓

Numworksでは、数式表示モードしかないので、512 という値が返る様です。
シミュレータで試した範囲では、こうなりましたネ。
 

  • HP50G

HP50GのRPNモードでは、'2^3^2' と打ち込んでやります。すると、2の肩に3が... という数式表示になって、更にEVALキーで評価すると、512 が得られました。

当方が高校生の時分、こうした累乗の累乗の計算について、先生から、こんな風に教わりました。

例えば「a^b^c」という式は「aのbのc乗乗」と読むのだと。これは、括弧を補えば「aの(bのc乗)乗」という具合です。式の上では「a^(b^c)」で、累乗のバヤイ、結合規則は「右から左」という事のようです。

高校の当時は、こんな計算をするとは思えなかったのですが、今はプロ電一丁で気軽に計算できる御時世。昔の数学の勉強、やさしい時代だったなぁ、などと。

これは、Wolfram alphaで適用されている規則の様ですが、TI-84 plusではそうなっていないと言います。

関数電卓では、括弧の計算で、途中の結果を保留するのに内部でスタックを用いておりますが、昔の関数電卓では、かっこの段数=スタックが6段程度しか用意できないものでした。メモリ資源が十分ではなかったのですネ。そりゃそうです、昔の関数電卓では、プロ電でも38 stepで定数メモリ7個とかでしたヨ。
TI-84 plusになると、プロセッサもZ80互換でメモリも十分になってきましたが、式解釈部分は省メモリの構成だったのか ? などと夢想するのであります。そこで、累乗の演算子結合処理も、右から左結合ではなく、左から右結合でおこなっていたのだろうか、と。

ちなみに、HPのRPNは、こうした「メモリ資源の少ない」ハードウェアでも、スタックを明示的に利用する事で、式解釈の部分を省力化できたのだろうか ? などと夢想するものです。
同時に、演算子の優先順位を考慮する式解釈を人間にやらせる事で、式解釈の曖昧さ回避にもつながる「功徳」が得られたのではないか ?
上記のblog様では、PEMDAS / BODMAS ちうモンをご紹介されておりますが、こうした話題には、1行数式記述による演算子の優先順位の曖昧さに関わる問題を孕んでいる様に思われます。

TI-84 plusで、「2の肩に3が、更に3の肩に2が乗る」計算をする場合にはどうしたらいいのか ? 答えは簡単で、括弧を明示使用すればよろしい。「2^(3^2)」という具合ですネ、恐らく。(持っていないので、お持ちの方はお試し戴き度)

プログラミング言語では、数式記述部分で演算子の優先順位などを仕様として規定する様です。
グラフ電卓では、数式表示機能を充実させる事で、曖昧さ回避をしたのか ?

久しぶりに面白い話題に触れた格好ですが、こうした事も抑えておかないとならないので、今の学生さんのご苦労には頭が下がる思いであります。

2022年7月29日金曜日

緊急連絡 !? 電卓とは無関係です !!

 ここによると、2022/07/29 近傍で、大きな地震がありそうだとの推測を報告しております。

http://www.jishin-yohou.com/99_blank003006.html

もちろん、今日の地震予測は、まだ困難だと言われておりますから、占い程度の話、として受け止めてもいいのですが、
元首相が日中、暴漢により射殺されるといった凶悪な事件が起こるなど、何があるか判らない、不確実性の世の中であります。

頭の隅っこにでも入れておいたら、慌てる事もないのではないか、と。

2022年7月24日日曜日

fxーCG50の現状から考えていた

 昨今の岸田円安で、輸入品の価格が暴騰しており、高機能電卓の価格も鰻登り。猛暑の上、うなぎも食っていない内から「これはたまらん」とナケナシの財布を叩いて、海外版の fx-CG50 を緊急に購入した次第。

そんな具合で、暫くは fx-CG50 の newbie であります。HP Prime欲しかったのですが、30,000円近いので、よう手が出ません。御容赦戴きたく。

そこで、人様のTweetをネタに、色々と思う所を。まずは、以下のTweetから。

https://twitter.com/BlackcatKrnk/status/1548675041327747073

fx-CG50を買おうか迷っているけれど、OSとかのダウンロードって今から購入しても最新バージョンって入ってない…? PC環境がないから最新バージョン入れる必要あったら無理かも。あとアドイン(化学定数等)とかも初期で入ってなかったら使いたいのに使えない…

 そうでありました。海外版もファームが古い。
そして、世はまさにスマートフォン全盛、今日、PCを使う「餅ベーション」はありません。若い人はPC持っていなくとも、困ることはないのでしょう。
Officeでワープロ、表計算とか使う場面もあるでしょう。今日、MS Wordは公官庁でも広く利用されております。中には「文書改竄」の具としても。それは言いすぎかも知れませんが、そういった場面でもなければ、PCを積極的に使用しようとは思いますまい。
そんな具合で、高機能電卓のファーム更新も、できれば本体で完結できるのが望ましい。のであります。
実際、当方もWindows、暫く使っておりませんヨ、情けない。
ちなみに、当方が入手したfx-CG50には、周期律表のAddOnが準備されていて「ニホニウム」も表示できましたネ、このあたりは、そこそこ新しいみたい。
他方、高機能電卓を使いこなす、となれば、PC, Windows/Macでも持っておくのが「便利」ではあります。
ファーム更新は元より、プログラムなどを保存するのにも重宝します。更には、blogネタを書いて、公開するなど。
安っぽいもので十分です。Officeも要りません。面白いですヨ。
 

https://twitter.com/V_Mizui/status/1547190592387440640

 FX-CG50のプログラム言語が左辺値を右辺に対して代入する仕様になってるの不思議だし頻繁に間違える。

プログラミング言語、特にBASIC, pythonあたりから始めたりすると、そう思うのは当然の成り行きであります。
しかし、    fx-CG50は、出自が「電卓」なので、計算結果をメモリに保存する、というキーストロークで考えると、右辺変数に代入、という記述方式は仕方のない所ではあります。

https://twitter.com/DchzTb4WftPvlKG/status/1543007909659176960

今もってPB-100を愛用されているとは、物持ち良いなぁ、いや、そこではなかった。

PB-100とfx-CG50のLoop速度比較であります。
「35歳の年齢差を流れを考えると現行機種の負けです。」とは、カナシイ。
それだけ、当時のPB-100が「完成」された製品であった、という事を言いたかったのかも知れません。
他方、現行製品たるfx-CG50の実行速度の遅さを憂いている発言でもあるのですが、
同時に、fx-CG50のBASIC自体も大きく進歩しているので、単純な比較は出来ないものです。
Tweet主は、そこも押さえた上で上記の発言をされたのだと思うのですが、SH4という32bit processorを採用しているのであり、もっと早い実効速度を期待したい、という所でもあります。

fx-CG50は、カラー表示で、乾電池稼働する稀有の機体であります。実行速度がイマイチなのは、その辺りにも原因があるのですが、Sentaro様はSH4のClock up設定をするAdd Onを作られており、電池の消費を度外視すれば、更なる実行速度が稼げます。
更には、upythonでは、より実行速度が早いらしい。

一方で、upythonの機能は、残念ながら、BASICの様な機能を持っていない部分があります。
リアルタイム・キー入力が一つの例です。
また、複素数、統計計算などのBASICで利用可能な機能は、upython にて自前で作成しないとならない。

他のupythonグラフ電卓でも言える部分があるのですが、upython機能は、電卓のAPIを拡張する様には出来ておらず、独立したupython環境として、電卓のUser I/Fから分離する方向でインプリメントされております。
これが何を意味するのか ?

例えば、グラフ電卓では、数式を登録して、そのグラフを簡単な操作で描図出来ます。
しかし、その数式が簡単ではない場合、自前の「関数」としてプログラム作成、数式描図機能に盛り付けたい、と思うのは人情でありましょう。
upythonならば、自前の関数を定義して、グラフ描図機能で使ってみたくなりますよネ。
しかしながら、電卓環境とupython環境は別個のものなので、こうした利便は提供されておらんのであります、ハイ。

もちろん、BASICでも状況は大差ないですが、よりましなのは、グラフ描図機能を呼び出す事は可能であるのです。

2022年5月27日金曜日

久しぶりに店頭でfx-CG50をいじってきましたヨ

時間があったので、量販店の店頭で、fx-CG50をいじってきました。

店頭のデモ機には、当然の事ながらpythonやC:BASICは入っておりません。
そこで、本体に予めある CASIO BASIC による、Mandelbrot集合グラフィクスをやってみましたよ !

他のカラーグラフ電卓のグラフィクスがQVGA (320x240 pixels)に対して、fx-CG50の画面は379x187 pixels となっております (CASIO BASICのバヤイ)。
解像度は、かなり細かいのですが、CASIO BASICでpixel ハンドルを行おうとすると、つぎの制約がある様子。

  • BASIC インタプリターは、少々遅い
  •  ピクセルの色付け、固定の7色しか使えない

C:BASIC やpythonでは、こうした枷がないのですが、そこは店頭のデモ機ですから、制約を楽しみつつ、いじって来ました。

 CASIO BASICで点を描くには、いくつか命令がありますが、Plot 命令による点描では、3x3 pixelsの四角を描くらしい。
379x187 pixelの解像度を活かすには、1x1 pixelの点を打つ操作が欲しい所です (Flineによって出来る様子) が、大量の点を打つと、その分、遅くなりそうです。
実行速度との兼ね合いから、今回はPlot 命令によってプログラムを構成してみました。

作図領域にもよりますが、以下のプログラムではおよそ20分程度の時間が掛かった模様です。
店員サンの動きを気にしながら、気長に動かしてみて頂戴。
お暇なら使ってネ、私寂しいの ... (バーローッ)。
あーあ。こんなんだったら、買ってしまえばいいものを ... ゲルピンで、財布は軽い毎日。トホホ。

 
(Listだよん) 
ViewWindow -3.78,3.78,0,-1.86,1.86,0
CoordOff:GridOff:AxesOff:LabelOff

For 0->J To 186 Step 3
For 0->I To 378 Step 3

I(Xmax-Xmin)/378+Xmin->D
J(Ymax-Ymin)/186+Ymin->E
0->X
0->Y
1->C
While X^2+Y^2<=4 And C<14
X^2-Y^2+D->Z
2XY+E->Y
Z->X
C+1->C
WhileEnd

MOD(C,7)->C
C=0=>Black PlotOn D,E:
C=1=>Blue PlotOn D,E:
C=2=>Red PlotOn D,E:
C=3=>Magenta PlotOn D,E:
C=4=>Green PlotOn D,E:
C=5=>Cyan PlotOn D,E:
C=6=>Yellow PlotOn D,E:

Next
Next
 

2022年5月17日火曜日

プログラム作成、ゴーヂャスに行こう !

こんなTweetがありました。

https://twitter.com/louvre_ken/status/1517883336496013312

カシオさんのFX-CG50-N で
ポケコンレベルのゲームを作れるものですか?

当方の認識としては「ポケコン」つうと、BASICが稼働する製品で、既に製造されなくなって久しい。
おそらく、最初はSharpのPC-1210/1211 (4 bit CPU)から始まり、最後には、CASIOのZ-1 (16 bit CPU ; CMOS 8086)だったか、で幕を閉じた、そういう製品群だと思うのであります。

こうしたBASICポケコンが終焉して久しい今日ではあります。
上記のTweetの主は、どういった製品を指して「ポケコン」と称しているのだろうか ?

BASICポケコンが製造されなくなり、その後は、電子手帳、そしてPDA製品へ流れて行きます。PDAというと、当方などはHP-LXから始まり、Windows CEデバイス、Palm OSマシンなどを想起します。そして、民生品としては、携帯電話から、今日のスマートフォンへ至る道筋があります。
そういや、PDA全盛のころ、経産省あたりが音頭をとって「MBT」という名前のデバイスを策定していた、などという話がありました。MBT = Moble Bussiness Tools, です。Main Battle Tankではありません。今から思うと、かなり物騒な名称でした。

そして、今日ではスマートフォン全盛で、更に、ポケットに収まる大きさのPCなども製造されております。ドンキで販売されているNanote などは、その好例といえましょう。そうした、ポケットに収まるPCの事を、今日的にはポケコンと言っているのだろうか ?

昔の、BASICポケコンの事を指しているのだとすると、これはかなり偏屈であるのだらうか ? それは言い過ぎとしても、かなりノスタルジイではあります。
Tweetの主、かなり体作りに余念のない方らしく、かなりお若い様に思われます。当方の様にポンコツではありませんね。
そうした御仁がBASICポケコンの事を指しているとは思えず、色々と考えてしまったのです。

BASICポケコン、最後に出たのが、8086の製品でありましたが、それでも、DOSの様なモノは搭載されておりませんでした。そら、そうですネ。ストレージも、64KBとかでしたから。しかし、8086を採用しただけでも、十分に評価できるものでありました。

今日では、Arduinoベースのゲームデバイスを始め、さまざまなプログラマブルなガジェットが登場しております。

ref. カードサイズの携帯ゲーム機「Arduboy FX」が店頭入荷、250以上のゲームを搭載 - Akiba Watch
https://akiba-pc.watch.impress.co.jp/docs/news/news/1408350.html

「ポケコンレベルのゲーム」というのは、こうしたモノを指しているのだらうか ?
ArduBoy、PCで動作する開発環境によって、かなり高度なゲームプログラムが作成、公開されております。
ArduBoyのプロセッサは、ATmega32u4という8bit RISCで、16MHzで動作する模様。昔のBASICポケコンは、1MHz で動いたかどうか、でした(PC-1251あたりは、576kHzだったかしらん ?)。当時のZ80 BASICマシン、クロックが4MHz程度でしたネ。
ソコは時代の進歩ではあります。
ちなみに、PC-E500で32x32dot のMandebrotグラフィクスをBASICで動かした人の話では、20分くらいの時間が掛かったと言います。

海外では、TIの電卓などで、バイナリのゲームを作成するという事が広く行われていると言います。
そして、CASIO fx-CG50 でも、バイナリのAdd On を作成し、かなり高度なプログラムが開発されている模様です。
この文脈ならば「ポケコンレベルのゲーム」と言うのは、十分に説明がつきそうです。

fx-CG50では、Sentaro様がAdd Onを作成されていて、Clock Upから、C:BASICまで作成されております。この辺りは、親分のサイトでも積極的に情報発信されております。
Add On開発ツールによって、かなり高度なゲームプログラムは作成可能だといいます。可能性は大いに開かれております。

PC開発資源が十分に活用できる今日、プログラム開発も「ゴーヂャスに」行きたいものであります。