先日、HP PrimeでSierpinski Gasketsの実行例がYouTubeに上がっているというので、我がHP50gで同じ様なコードを動かして比較した、というネタを書いたのですが、ここで、そのコードの内、SysRPL版についての簡単な解説を出しておきます。こんなコードでした。
!NO CODE
!RPL
::
CLEARLCD (LCD クリア )
TURNMENUOFF (MENU 表示を OFF に)
80 131 MAKEGROB (画面の大きさのGROBを作成)
GROB>GDISP (作成したGROBをPICTに入れる)
TODISP (PICT を表示します)
' ID R PURGE (一旦、変数を削除してから)
%0 ' ID R CREATE (変数を作り直す)
' ID X PURGE (上記と同様)
%1 ' ID X CREATE
' ID Y PURGE
%1 ' ID Y CREATE
3000 0 DO (3000 回のループ計算)
%RAN %3 %* ' ID R STO (変数Rに0以上3未満の乱数を入れる)
ID R %1 %< ITF (Rの中身が1未満ならば、)
:: ID X %0.5 %* ' ID X STO ID Y %0.5 %* ' ID Y STO ;
(X=0.5*X; Y=0.5*Y; )
:: ID R %2 %< ITF (入れ子判定 ; Rが2未満ならば、)
:: ID X %0.5 %+ %0.5 %* ' ID X STO ID Y %1 %+ %0.5 %* ' ID Y STO ;
(X=(X+0.5)*0.5; Y=(Y+1)*0.5; )
:: ID X %1 %+ %0.5 %* ' ID X STO ID Y %0.5 %* ' ID Y STO ;
(Rが2以上の場合 ; X=(X+1)*0.5; Y=0.5*Y; )
;
ID X %80 %* COERCE 25 #+ 80 ID Y %80 %* COERCE #- (点を描く座標の計算)
PIXON3 (PICT に点を打つ)
LOOP
;
@
* SysRPLが早いワケ
SysRPLでは、BINT (Binary Integer) という整数値 (5 nibble) を利用できます。整数値の計算は、BCDの十進数よりも計算の時間が少ないので、BINT を積極活用する事で、UserRPL よりも高速に動作するプログラムが作成できるのです。
また、システムのAPIを直接呼び出すので、UserRPLよりも早く動作します。
しかし、SysRPLでは、プログラムの作成、実行に少々手間が掛かるのも事実です。
コンパイラ(ASM コマンド)は、ソース中の整数値を自動でBINTとして解釈しますが、整数の演算には、#+, #-, #*, #/ の様に「#」を付けた命令を使います。BCDの電卓数値、演算は、%3 %4 %+ の様に「%」を付けて表現されます。
COERCE によって、スタックにあるBCD実数値をBINTに変換できます。
* 大域変数の作成
大域変数の作成には、CREATE が利用できます。スタックに変数の内容を積んでおき、変数名を指定して CREATE を実行します。
変数名の指定には、' ID [変数名] というシーケンスを書きます。最初のシングルクォートがないと、変数の読み出しとなってしまいます。
変数を作成するには、以上の操作で十分ですが、何度も CREATE で変数を作成すると、同じ変数名の変数が複数作成されます。変数の同一性を担保するには、作成前に変数を削除するのが確実です。変数の削除には、PURGE が使えます。
以上をまとめて、大域変数 R を作成するには、つぎの様にしました。
' ID R PURGE (一旦、変数を削除してから)
%0 ' ID R CREATE (変数を作り直す)
* 分岐構造
分岐構造には、いくつかの方法がありますが、ここでは ITF (If Then False) を使用しています。
[condition] ITF [True block] [False block]
ブロックは、:: と ; で囲む事で成立します。
ITF は、ブロックを2つしか取れませんから、複数の分岐の場合、False block 中に、更に ITF による分岐を入れ子にする必要があります。
* グラフィクスの扱い
大まかに、50gでは LCD (液晶画面) と、PICT の2 つのグラフィクスがあります。
特に何もしなければ、画面に表示されているのは液晶画面のハードウェア・グラフィクス・メモリです。プログラムの実行中はグラフィクスが表示されていますが、実行後は、スタック表示になって消えてしまいます。
PICTにグラフィクスを描けば、プログラムの実行後にもグラフィクスを呼び出せます。
プログラムで PICT を表示させるには、 TODISP が使えます。TODISP を実行すると、PICT を表示しながらグラフィクスに手を入れられます。
CLEARLCD (LCD クリア )
TURNMENUOFF (MENU 表示を OFF に)
80 131 MAKEGROB (画面の大きさのGROBを作成)
GROB>GDISP (作成したGROBをPICTに入れる)
TODISP (PICT を表示します)
PICT のクリアには、MAKEGROB にて 新しいGROB を作成し、GROB>GDISP で作成したGROB を GDISP (PICT) に入れてやります。
LCDに点を打つには PIXON 、PICTに点を打つには PIXON3 を使います。他のコマンドも多くあります。
なお、SysRPLの勉強には、
Introduction to System RPL and Assembly Language - hpcalc.org
http://www.hpcalc.org/details.php?id=7114
が大変参考になります。
高機能電卓の情報を広く扱おうと、こんな題名にしました。 先日、手持ちの HP50G がイカれてしまい、HP電卓についての話題を追いかける事が出来なくなりました。 他社の高機能電卓も気になるので、色々とちょっかい出しますヨ。 宜しくネ。
2013年10月14日月曜日
HP Primeの大域変数について
先日、コメント欄に「数式中の変数が、英文字1文字の掛け算になってしまう」というお話をもらいました。シミュレータで動かしてみた所、確かにその様子。
デフォルトでは、A~Zの英文字1文字の変数が実数値変数として設置されているので、例えば適当な変数名を想定して、電卓にうち込んでも、英文字1文字の変数の掛け算と解釈されてしまう模様です。
これを回避し、必要な変数名として数式に盛り込むには、あらかじめ変数をユーザー変数として登録しておくと良い様です。ユーザー変数を登録しておく事で、数式中でもユーザー変数を識別して、英文字1文字変数の掛け算になる状態が回避される、らしい。
Solvreに使う英文字1文字変数があらかじめ設定されているかららしいのですが、この英文字1文字変数が「実数」変数となっている所も、少々苦しい。数値解Solvreで複素数解が得られんじゃないの。でも、数値解SolvreはNewton solvreではなく「はさみ打ち法」だったので、これは仕方の無い所だった、のか。ウーン。
デフォルトでは、A~Zの英文字1文字の変数が実数値変数として設置されているので、例えば適当な変数名を想定して、電卓にうち込んでも、英文字1文字の変数の掛け算と解釈されてしまう模様です。
これを回避し、必要な変数名として数式に盛り込むには、あらかじめ変数をユーザー変数として登録しておくと良い様です。ユーザー変数を登録しておく事で、数式中でもユーザー変数を識別して、英文字1文字変数の掛け算になる状態が回避される、らしい。
Solvreに使う英文字1文字変数があらかじめ設定されているかららしいのですが、この英文字1文字変数が「実数」変数となっている所も、少々苦しい。数値解Solvreで複素数解が得られんじゃないの。でも、数値解SolvreはNewton solvreではなく「はさみ打ち法」だったので、これは仕方の無い所だった、のか。ウーン。
2013年9月27日金曜日
既に欧米版HP Primeが届いているそうです
匿名氏が、前のポストのコメントで、そう言っておりました。
一方、Julyさんからは、こんな話が。
hp Prime 日本向けパッケージ付属マニュアル続報 - July.co.jp
http://www.july.co.jp/?p=1202
紙のマニュアルではなく、CD収録の電子文書(PDFかなぁ)の模様。また、Quick Guideか本編なのか、その辺も不明だそうです。
電子文書ならば付録するのも容易でしょうから、早期の販売が期待されます。既に船便で出発しているのかな ?
一方、3Dのplot機能がない、と、Amazon.comのレビューには書かれているそうです。
しかし、これをプログラムで解決しようという試みが為されています。
Graph3D v2013.09.26 for HP Prime - MoHPC
http://www.hpmuseum.org/cgi-sys/cgiwrap/hpmuseum/forum.cgi?read=251367#251367
当方の様に日本語版を待ちわびる方には、最新のシミュレータの在り処が、MoHPCに報告されています。
where can I get the HP Prime simulator? - MoHPC
http://www.hpmuseum.org/cgi-sys/cgiwrap/hpmuseum/forum.cgi?read=251295#251295
その在り処は、
The ultimate Emulator Version, of Advanced HP PRIME GRAPHING CALCULATOR.
http://h30499.www3.hp.com/t5/Calculators/The-ultimate-Emulator-Version-of-Advanced-HP-PRIME-GRAPHING/td-p/6175211#.UkRsbvFs2EJ
追記 on 2013/09/28 02:06
Julyさん所のAmazon.co.jp 売り場、残り4台だそうです。
一方、Julyさんからは、こんな話が。
hp Prime 日本向けパッケージ付属マニュアル続報 - July.co.jp
http://www.july.co.jp/?p=1202
紙のマニュアルではなく、CD収録の電子文書(PDFかなぁ)の模様。また、Quick Guideか本編なのか、その辺も不明だそうです。
電子文書ならば付録するのも容易でしょうから、早期の販売が期待されます。既に船便で出発しているのかな ?
一方、3Dのplot機能がない、と、Amazon.comのレビューには書かれているそうです。
しかし、これをプログラムで解決しようという試みが為されています。
Graph3D v2013.09.26 for HP Prime - MoHPC
http://www.hpmuseum.org/cgi-sys/cgiwrap/hpmuseum/forum.cgi?read=251367#251367
当方の様に日本語版を待ちわびる方には、最新のシミュレータの在り処が、MoHPCに報告されています。
where can I get the HP Prime simulator? - MoHPC
http://www.hpmuseum.org/cgi-sys/cgiwrap/hpmuseum/forum.cgi?read=251295#251295
その在り処は、
The ultimate Emulator Version, of Advanced HP PRIME GRAPHING CALCULATOR.
http://h30499.www3.hp.com/t5/Calculators/The-ultimate-Emulator-Version-of-Advanced-HP-PRIME-GRAPHING/td-p/6175211#.UkRsbvFs2EJ
追記 on 2013/09/28 02:06
Julyさん所のAmazon.co.jp 売り場、残り4台だそうです。
2013年9月23日月曜日
並行輸入版 HP Prime、価格下落
先日、July 溝江様からお知らせを戴きました、HP Primeの並行輸入版ですが、価格が下がっている様子。
HP Prime 並行輸入版 - Amazon.co.jp
http://www.amazon.co.jp/dp/B00F9SQKB6?tag=julycojp-22
確か、18,400円だったはずですが、今は 17,400 円となっております。英語マニュアル版でも、という強者は、予約してみてはいかがでしょうか。
HP Prime 並行輸入版 - Amazon.co.jp
http://www.amazon.co.jp/dp/B00F9SQKB6?tag=julycojp-22
確か、18,400円だったはずですが、今は 17,400 円となっております。英語マニュアル版でも、という強者は、予約してみてはいかがでしょうか。
2013年9月18日水曜日
どうやら、日本でも出るらしい
既に、Julyさんの所に、HP Primeのプレビュー版が届いている模様。
hp Primeプレビュー版 - July.co.jp
http://www.july.co.jp/?p=1174
また、アメリカでは既に販売されているそうです。
hp Prime Graphing Calculator アメリカ・アマゾンで販売開始
http://www.july.co.jp/?p=1176
MoHPC でも、以下のサイトで販売中という情報があります。
http://www.pcsuperstore.com/products/11910680-HP-NW280AAABA.html
一方で、Julyさんは
としています。これは即ち「Quick Start Guide日本語版(仮)」を準備中、という事でしょう。年末までには出ると期待して、待ちましょうか。
hp Primeプレビュー版 - July.co.jp
http://www.july.co.jp/?p=1174
また、アメリカでは既に販売されているそうです。
hp Prime Graphing Calculator アメリカ・アマゾンで販売開始
http://www.july.co.jp/?p=1176
MoHPC でも、以下のサイトで販売中という情報があります。
http://www.pcsuperstore.com/products/11910680-HP-NW280AAABA.html
一方で、Julyさんは
当然、日本版で付属予定の「Quick Start Guide日本語版(仮)」はアメリカ版には付属しません!
が、一刻も早く入手されたい方はどうぞ。
としています。これは即ち「Quick Start Guide日本語版(仮)」を準備中、という事でしょう。年末までには出ると期待して、待ちましょうか。
2013年9月16日月曜日
HP Primeはかなり早いらしい
SysRPLの勉強のため、50gで動く Sierpinski gasket のプログラムを書いてみました。
まずは、UserRPLでのコードから。
一方、同様の動作を行うSysRPLのコードです。
ちなみに、HP GCCならば、10000回ループにしても一瞬で描いてしまいます。
で、HP Primeではどうなのか ? 偶然ではありますが、MoHPC に、作業例が提示されて居りました。
Sierpinksi triangle on HP Prime - MoHPC
http://www.hpmuseum.org/cgi-sys/cgiwrap/hpmuseum/forum.cgi?read=250281#250281
YouTube動画へのリンクもあり、これをみると実に早い。こちらのコードでは3000回ループなのに、HP Primeでは20000回ループだそうです。ウーン。
恐らくインタプリタであろう電卓言語で、ここまでの速度が得られる。恐るべし、HP Prime。確かに、単純にARM 75 MHz (12 MHzという話もありますが)と 400 MHz ですから、パワーは大きく違うのではありますが、ここまで見せつけられるとなると ... 欲しい。
まずは、UserRPLでのコードから。
«
-.3125 1.3125 XRNG 0 1 YRNG
{ # 0d # 0d } PVIEW ERASE
1 'X' STO 2 'Y' STO
1 3000 START
RAND -> n «
CASE
'n<1 2="" br="" end="" sto="" then="" x="" y=""> 'n<2 .5="" 1="" 2="" br="" end="" sto="" then="" x="" y=""> X 1 + 2 / 'X' STO Y 2 / 'Y' STO END
X Y i * + PIXON
»
NEXT
»
2>1>
これは、3000回のループを行います。ガベージ・コレクションの発生もあるので、一概に実行時間が決まりませんが、実行したら10分程度掛かります。一方、同様の動作を行うSysRPLのコードです。
!NO CODE
!RPL
::
CLEARLCD
TURNMENUOFF
80 131 MAKEGROB
GROB>GDISP
TOGDISP
' ID R PURGE
%0 ' ID R CREATE
' ID X PURGE
%0 ' ID X CREATE
' ID Y PURGE
%0 ' ID Y CREATE
3000 0 DO
%RAN %3 %* ' ID R STO
ID R %1 %< ITE
:: ID X %0.5 %* ' ID X STO ID Y %0.5 %* ' ID Y STO ;
:: ID R %2 %< ITE
:: ID X %0.5 %+ %0.5 %* ' ID X STO ID Y %1 %+ %0.5 %* ' ID Y STO ;
:: ID X %1 %+ %0.5 %* ' ID X STO ID Y %0.5 %* ' ID Y STO ;
;
ID X %80 %* COERCE 25 #+ 80 ID Y %80 %* COERCE #-
#2 NDUP PIXON PIXON3
LOOP
;
@
こちらも3000回のループを行うのですが、実行時間は流石に早く、1分半程度になりました。ちなみに、HP GCCならば、10000回ループにしても一瞬で描いてしまいます。
で、HP Primeではどうなのか ? 偶然ではありますが、MoHPC に、作業例が提示されて居りました。
Sierpinksi triangle on HP Prime - MoHPC
http://www.hpmuseum.org/cgi-sys/cgiwrap/hpmuseum/forum.cgi?read=250281#250281
YouTube動画へのリンクもあり、これをみると実に早い。こちらのコードでは3000回ループなのに、HP Primeでは20000回ループだそうです。ウーン。
恐らくインタプリタであろう電卓言語で、ここまでの速度が得られる。恐るべし、HP Prime。確かに、単純にARM 75 MHz (12 MHzという話もありますが)と 400 MHz ですから、パワーは大きく違うのではありますが、ここまで見せつけられるとなると ... 欲しい。
2013年9月8日日曜日
コレジャナイ ...
まずは、こういう話があるのだそうだ。
教科書12社、『デジタル教科書』を共同開発へ(2014年春に実用化を目指す) - タブクル 様
tabkul.com/?p=34895
いわゆる「ちゃちな電子教育道具」を、今度は教科書として利用しようというハラ。しかし、何でまたこんな話が、と思ったら、
なんだそうだ。高校生全員がタブレの洗礼を受ける事になるらしい。で、その実相が、つぎの話題から垣間見える。
県立高のタブレット端末 生徒負担は5万円 - 佐賀新聞
http://www.saga-s.co.jp/news/saga.0.2544580.article.html
いわゆる教育利権というヤツです。「タブレットが悪い」とは言いません。しかし、最初から「端末の基本ソフトはウィンドウズ8に決まっている」となっているのが「?」なのです。一つには、競争入札で選定する、という「配慮」があるからなのですが、ならば「5万円を下回ることはない」とは、どういう事なのか。
昨今の電子百科事典が、この程度(5万円)の価格で販売されているから、という事もあってなのか、5万円を設定したのかも知れませんが、電子百科事典には、著作物の使用料金が含まれているのですから、ある程度高いのはやむを得ない所 (もっと安くして欲しいのですが)。しかし、教育用タブレ製品では、電子教科書もアプリケーション、コンテンツとして別途購入することになりましょうや。それも生徒負担。
紙の教科書には「落書き」の楽しみもありましたが、電子教科書には出来ない相談です。それは余計としましても、 デジタル教科書はどんなものになるのでしょうか。
Windows 8には、Intel版、ARM版の2つがあります。Intel版だとするならば、デバイスの中身はPCなんですから、「タブレット」とは言わず、もっと安価に供給できるWindows 7のノートPCでも良さそうです。大学に行っても使えるでしょう。一方、ARM版だとすると、アプリケーションが劇的に少なく、それこそ教育分野で使うには問題があるのではないか。
順当に、タブレを教育分野で使うというのならば、まずは使いやすいiPad、そして安価なAndroid、というあたりからではないか、と思うのですが、サガでは「コレジャナイ」製品が採用される事になりそうです。さて、他の都道府県ではどうなるのでしょうか。
教科書12社、『デジタル教科書』を共同開発へ(2014年春に実用化を目指す) - タブクル 様
tabkul.com/?p=34895
いわゆる「ちゃちな電子教育道具」を、今度は教科書として利用しようというハラ。しかし、何でまたこんな話が、と思ったら、
日本では2019年までに全生徒へタブレット型端末を配備する予定としており、『デジタル教科書』については2014年春の実用化を目指すとのこと。
なんだそうだ。高校生全員がタブレの洗礼を受ける事になるらしい。で、その実相が、つぎの話題から垣間見える。
県立高のタブレット端末 生徒負担は5万円 - 佐賀新聞
http://www.saga-s.co.jp/news/saga.0.2544580.article.html
県教育情報化推進室によると、端末の基本ソフトはウィンドウズ8に決まっているものの、ハードのメーカーや導入するデジタル教材、最終価格は入札で決定する。
ただ、「5万円を下回ることはない」(同推進室)ことから、生徒の自己負担額を5万円に設定した。
いわゆる教育利権というヤツです。「タブレットが悪い」とは言いません。しかし、最初から「端末の基本ソフトはウィンドウズ8に決まっている」となっているのが「?」なのです。一つには、競争入札で選定する、という「配慮」があるからなのですが、ならば「5万円を下回ることはない」とは、どういう事なのか。
昨今の電子百科事典が、この程度(5万円)の価格で販売されているから、という事もあってなのか、5万円を設定したのかも知れませんが、電子百科事典には、著作物の使用料金が含まれているのですから、ある程度高いのはやむを得ない所 (もっと安くして欲しいのですが)。しかし、教育用タブレ製品では、電子教科書もアプリケーション、コンテンツとして別途購入することになりましょうや。それも生徒負担。
紙の教科書には「落書き」の楽しみもありましたが、電子教科書には出来ない相談です。それは余計としましても、 デジタル教科書はどんなものになるのでしょうか。
Windows 8には、Intel版、ARM版の2つがあります。Intel版だとするならば、デバイスの中身はPCなんですから、「タブレット」とは言わず、もっと安価に供給できるWindows 7のノートPCでも良さそうです。大学に行っても使えるでしょう。一方、ARM版だとすると、アプリケーションが劇的に少なく、それこそ教育分野で使うには問題があるのではないか。
順当に、タブレを教育分野で使うというのならば、まずは使いやすいiPad、そして安価なAndroid、というあたりからではないか、と思うのですが、サガでは「コレジャナイ」製品が採用される事になりそうです。さて、他の都道府県ではどうなるのでしょうか。
登録:
投稿 (Atom)