ブログトップ

電子工作やってみたよ

タグ:HP電卓 ( 30 ) タグの人気記事

ディスコのプログラムコンテストをネットで見たら 問題はチラシ広告だけでなくネット上にも在り合計3問出ていたのですね。
3問目は文字列を扱うので電卓では無理だけど2問目はできそうなので挑戦してみることに。


c0335218_13073923.jpg

2問目
1~1000までの間で3と5の両方で割り切れる数の
20番目と40番目と60番目の合計は?

3問目
次の300 個の名字の文字列の中で、
3 番目に多いアルファベットとその数は?
解答は「アルファベット」「数」を
カンマで区切り、記入ください。
( この後 ダウンロードするクリックがある これは HP電卓ではできません )

2問目の解き方を考えるため電卓いろいろいじっていたらプログラムを組むまでもなく答え 1800が出てきてしまった。
ここで用事頼まれて用足しして戻ってきたらメールが来ており kusakaさんは2問目も3問目もプログラムで解けたということです。
こちら もうやる気無くしていたのですが後から答えの1800が出るプログラム作ることに。
こんなの たしか大昔に読んだ星新一のショートショートにあったですね。
人間がプログラム作らずに神様の御利益を受け取っていたけれど、後になって神様は人間に「プログラムを作らないと滅ぼすよ」と言ってきて
人間は必死にプログラムを作るというような話だったかなー

2問目  kusakaさんのソフト
***********************************************

前回のでなれたから5分で出来ました。

答え1800

3問目はあまり扱わない配列、文字列なので手こずりましたが

30~40分で出来ました。


2問目 全プログラムリスト    kusakaさん作

#include <stdio.h>

void main()

{

    int ans = 0;

    int i;

    int c = 0;

    for(i = 1; i <= 1000; i++){

        if(i % 3 == 0 && i % 5 == 0){

            c++;

            if( c == 20 || c == 40 || c == 60){

                 printf("find\r\n");

                ans = ans + i;

            }

        }

    }

    printf("ans = %d\r\n", ans);

}


***********************************************************
以下はわたしの HP32Sii RPNでのソフトです。

2問目 使用されている変数 A,E,F

A01 LBL A
A02 0
A03 STO A    現在実行中の数 1~1000
A04 STO E 5と3で割れた回数
A05 STO F    20,40,60の時の数を加算したもの

B01 LBL B
B02 1
B03 STO +A   調べる数値を加算する
B04 RCL A
B05 5      調べる数値を5で割る
B06 ÷
B07 FP (FRACのこと)
B08 X キ 0 ?   5で割り切れたかチェック
B09 GTO B    割り切れなければ LBL B へ戻る
B10 RCL A
B11 3      調べる数値を3で割る
B12 ÷
B13 FP
B14 X キ 0 ?   3で割り切れたかチェック
B15 GTO B    割り切れなければ LBL B へ戻る
B16 1      5と3で割り切れたのでカウンターを1上げる
B17 STO +E   Eに1加算する
B18 RCL E    Eを読み込む
B18 20      カウンターが20になったかチェック
B20 X キ Y ?
B21 GTO C    20でないなら LBL C へ行く
B22 RCL A    現在実行中の数を読み込む
B23 STO +F   現在実行中の数をFに加算する
C01 LBL C
C02 RCL E    現在の5と3で割り切れた数を読み込む
C03 40     40か否か
C04 X キ Y ?   比較する
C05 GTO D   40でないなら LBL D へ行く
C06 RCL A
C07 STO +F   現在実行中の数をFに加算する
D01 LBL D
D02 RCL E    現在の5と3で割り切れた数を読み込む   
D03 60
D04 X キ Y ?   60か否かチェック
D05 GTO B    60でないなら LBL B へ行く
D06 RCL A
D07 STO +F   60の時の値を加算する
D08 RCL F    20,40,60の時の値の加算されたものをXレジに読み込む
D09 STOP    答えが表示されておわり

これで終わりです。


使用した電卓は HP32Sii です。 答えの”1800”がでるまでに48秒くらいかかりました。
このソフトでは一つづつすべての数値を調べていますが、kusakaさんに指摘で5の倍数だけ調べればいいわけですから
B02の1を5に変えることにより20秒で済むようになりました。

前回 HP32S を使い今回 HP32Sii を使ったのですが、デバッグ時の使い勝手は HP32S の方が良いですね。
HP32Sの方が多少機能が低いようですが プログラムモードの時ステップ送りをするのに1キーですむのにたいして
HP32Sii ではキーを2回押さなければならずデバッグ中にプログラムを壊してしまうことがありました。



by telmic-gunma | 2017-10-14 13:12 | HP電卓 | Trackback | Comments(2)

今年の目標 考えた


お正月に来ていた子供や孫が帰ったとたんに風邪をひいて寝込みました。
世の中には「孫疲れ」というものが、あるそうですがそれにかかったのかなー。
若いころは風邪をひいてもオートバイを乗り回してくればすぐに治ったのに今ではなかなか治りません。

「今年の目標」なんて小学生の作文じゃないですが 一応考えてみます。

1. 自転車
  長野から埼玉への三国峠、中津川林道へのサイクリングに行く。
  ここは昔からの夢だったのですよ。
  一緒に行く仲間が見つかったので今年こそ実行できるでしょう。
  体を鍛えておかなくては。

2.ダイエット
  いま 私の体重 77.0㎏ これを12月には70㎏を切りたい。
  できれば66.0kg  最終目標は62.0kg
  以前 ダイエットの競争して3か月で5㎏減らすことができました。

3、毎日歩く
  1時間 ダイエットとボケ予防も兼ねる。

4.HP電卓を使って数学の勉強。
  三日坊主を無くせればなー

5.ブログ
  週 2個書きたい  「電子工作やってみたよ」に沿った内容で作る。

6.死ぬまで仕事をする
  先日 親戚の床屋さんにいってきました。
  83歳で現役 頭もしゃべり方もシャープです。
  このあいだニュースで105歳で現役の床屋さんを紹介していました。
  指や手を使うのは頭にいいのですね。
  私の知り合いの人は60歳で定年後は毎日昼間からお酒を飲んでテレビを見ていました。
  70歳になったときはろれつが回らなくなっていました。
  以上少ないサンプルですが、人間は死ぬまで仕事をしていればボケないということですね。
  

とりあえずこんなところですか。
やりたいこと思いついたら追加していこうとおもいます。


by telmic-gunma | 2017-01-09 22:38 | ときどき思うこと | Trackback | Comments(9)

電池CR2032が使用されている最近の2機種について消費電流を計ってみました。
2機種とも電池は並列で使用されパワーコントロールされているようなので同時に各々を計り合計してみました。
hp15C_LEに関しては、電流のバランスが崩れても合計が一定になるように制御されているようです。
やはり電源OFF時の消費電流が昔のものに比べて100倍から1000倍大きくなっていますね。
これだもの机にしまっておくだけで電池が無くなってしまうのですね。
意外にもキー入力待ちの時は、少ないです。
プログラム実行中の消費電流は演算速度がダントツのHP15C-LEがやはり一番食べてます。
これで気になる機種の消費電流はひと通り計りましたが、電池が早くなくなると言われているものは、それなりに消費電流が大きいことが裏付けられました。
電流測定は、三和計測器のデジタルテスター PC5000を使用しました。
この測定では、2個の電池の各々の電流が変な挙動をするので、一週間以上悩みました。
HP15C_LEの電源OFF時の3.65μA以下の”以下”は不要です。

c0335218_17432480.jpg


















c0335218_17433451.jpg
















追記(2016-12-3 )
すがわらさんからコメントで測定データーに検証を加えていただいたのでここに移しました。
********************************************************************
HP35sの大喰らいが実証されましたね。それにしてもこの暗電流の多さは... 完全に設計ミスだと思える量。CPUの設計の古さなんでしょうね。
パナのCR2032の公称容量は220mAhと有りますから、全部使えるとして10476時間なので436日。実際には半分くらいで電圧不足になるのでしょうから、218日なので7カ月程度。まぁ半年くらいでダメになるという感触と有っているように思います。
少し前から0.9V程度あれば起動できるDC-DCコンバーターが実用化されてますので、そういったものを搭載して、最後の一滴まで搾り尽すような設計が欲しいですね。
********************************************************************



by telmic-gunma | 2016-12-02 18:03 | HP電卓 | Trackback | Comments(2)

”すがわら”さんから HP35Sの遅い理由を教えていただいたのでここに載せます。

35sのバッテリーについてはやはり「持たない!」と海外でも騒いでいるようです。それと速度ですけど、35sのCPUは液晶駆動用LSIにCPUが内蔵された形のもので、SPLB31Aという台湾のGeneraplusという会社の物とのこと。
で内蔵されているCPUですが、MOS Technologyの8502です。
ここでヌヌヌと思われたかもしれませんが、8502は「あの」6502のI/O内蔵版である6510の改良品だそうです。
しかしながら8bitであり、低消費電力のためクロックもそれほど高くできないので、それほど早く無いとなります。
オリジナルの8502は2MHzクロック。SPLB31Aはデーターシート上ではVDD 3.6V時にMax 5MHzです。
チップのデーターシートではVDDの最大値が5.5Vとなっていますので、35sについてはバッテリーはパラ接続と思われます。というか、実際に片方外しても動きました... なので、消費電流計測も失敗なさったのだと思います。
hpmuseumというところのフォーラムには10uAだったてな話も出ていますが、もっと暗電流がありそうな気がします。
対して15C-LEにはAtmelのAT91SAM9というCPUが使用されていて、動作クロックも200M~400MHzと桁違い。CPU coreも32bitですし。なのでこれだけの速度差が出るのですね。
英語版のWikipediaにはいろいろと興味深いことがかいてあります。35sのご先祖様であるHP35はMostek製の1bit CPU(シリアル処理CPUですね。MC14500みたいな)で構成されているとか。
それにしてもこんなところで6502にお目にかかるとは思っても見ませんでした。8bitの名CPUって結構しぶとく生き残っているものですね。
知っている範囲では、パチンコ台の出玉制御のZ80(コアのみですけど)、古いタイプになりますがPS/2キーボードの8051、某ICカードの68HC11...

”すがわら”さんからの情報は以上です。 ありがとうございました。
HP35Sの消費電流 ますます計ってみたくなりましたね。 



c0335218_18081020.jpg












by telmic-gunma | 2016-11-25 06:42 | HP電卓 | Trackback | Comments(0)

HP電卓の演算速度 HP35S, HP41CV を計測しました。
HP35SはHP15C_LEよりも十倍以上遅いのは不思議です。
測定プログラムは前回使用し他の機種に使ったものと同じです。
そもそもこういう仕様なのか、私の計測ミスなのか、もし原因判ったら教えてください。

HP41CVのプログラムはカウント終了比較のところが Xキ0 から X=0でやるために
ループのステップ数が6から7に増えています。

HP41CVのテストプログラムです。

LBL ”AA"
200
STO 00
LBL "BB"
1
STO -00
RCL 00
X=0?
R/S
GTO "BB"


HP35Sはしまっておくだけで電池がなくなるので、消費電流計ろうとしたのですが、まだ上手くいってません。
c0335218_19010913.jpg














c0335218_18081020.jpg
































by telmic-gunma | 2016-11-24 19:00 | 基板製作 | Trackback | Comments(0)

畑のあと片付けをしていたら掘り忘れた、さつまいもが土の中から出てきました。
ささやかな事ですが、うれしいですね。
むかし 机の奥から封の切ってない給料袋が出てきたことがありましたが、その時と同じ位うれしいですね。
(もちろん中身の入った自分のですよ。当時は銀行振り込みではなかったですね)

c0335218_20435460.jpg






















畑にまいておいたチンゲン菜(左)とほうれん草(右)はかなり大きくなっていました。
チンゲン菜の炒め物 新鮮なせいかとても美味しかったです。

c0335218_20441138.jpg



























追記  2016-11-24 上記写真の次の日です。11月には珍しい大雪で20cm以上積もりました。
           チンゲン菜とほうれん草も雪の中。
           ビニール潰れないように雪を落としました。

c0335218_20141589.jpg


















c0335218_20143039.jpg








by telmic-gunma | 2016-11-23 20:59 | 農作業 | Trackback | Comments(2)

HP電卓の機種事の演算速度の比較をしてみました。
方法は下記のごく単純な同一プログラムを入れてプログラムが停止するまでの時間を測定してみました。
機種によってラベル名や変数名がアルファベットや数値なったりします。
また HP32S,HP32Sⅱ,HP4Sでは初期設定の200が1ステップで済みますが、
影響は微小なので無視します。
さすが新しいHP15C_LEは旧HP15Cに比べて150倍はすごいですね。
命令の種類によって1ステップの処理時間は当然変わってくるはずですが、
機種事の比較だけならこれでよいとおもいます。

追記 2016-11-24 HP35S、HP41CVの測定結果を載せたものをこの後のブログで出しています。

テストプログラム

LBL A
2
0
0
STO 0
LBL B
1
STO -0
RCL 0
Xキ0
GTO B
 

c0335218_05582268.jpg
















c0335218_19565409.jpg



by telmic-gunma | 2016-11-17 06:20 | HP電卓 | Trackback | Comments(4)

HP電卓の機種により消費電流が大幅に違うように感じたので比較測定をしてみました。
測定したのは、電池がLR44(アルカリボタン電池)のものだけです。
他の充電式やHP28S,HP41C,HP48Gなどは電池が大きいので消費電流が大きくても持ち時間は気にならないと思い測定してありません。
電流測定は、三和計測器のデジタルテスター PC5000を使用しました。
いつも気になっていたのは、HP42Sの電池がすぐ無くなってしまうことでした。

電源OFFの状態では、全機種とも測定限界以下なので問題ないと思います。
プログラム実行中は各機種とも電流が多いですが、通常の使い方では、キー入力待ちの状態で放置されているのが多いと思います。
やはりHP42SはHP15C(旧)に比べて10倍以上電流が多いですね。
電池の消耗を防ぐには、こまめにON-OFFを実行することでしょうか。
LR44アルカリ電池の値段をアマゾンで調べたら、今では1個10円程度で購入できるのですね。
これならまとめ買いをしておけば、さほど消耗を気にすることないのでしょうか。

追記 2016年12月2日のブログ にHP15C-LE と HP35S の消費電流のデータを追加して載せてあります。
c0335218_17304883.jpg










by telmic-gunma | 2016-11-11 17:56 | HP電卓 | Trackback | Comments(0)

ときどきHP電卓でキーが接触不良になったというのを聞きます。
HP32S、HP32Sⅱ、HP42Sなどの形で起きているようです。
私のHP32Sでも主に右側縦の列でキー入力をミスするようになりました。
HP電卓を開腹手術して修理するのはネット上でいくつか発表されています。(日本語ででています。)
しかし、これ失敗するとかなり悲惨なことになると思います。
HP電卓を通して知り合った、脇坂さんに簡単修理の方法を教わりましたので、ここでお知らせしたいと思います。

方法は
「重たい辞書でも上から乗せて一晩放置して筐体の平面性を保てば元通り。」

私のもこれでなおりました。
しばらく使っているとまた現象が出るときもありますが、その時はまた上記方法を行えばいいわけですね。
もし直らなければ、その時開腹手術すればよいと思います。

余談ですが、むかしHP25を改造して中から表示信号を取り出そうとしたら、案の定、壊してしまいました。
40年程前でまだYHP(横河ヒューレットパッカード)が扱っていた時代です。
八王子の工場まで持って行き修理を依頼し、後日「直りました」と連絡あったので受け取りに行ったら、ケースも全部新品になっていました。
修理料金はただでした。
修理を担当した人は、私が改造したのすぐ分かったと思うのですが。 
ごめんなさいね。 いい会社でしたね。


c0335218_18532787.jpg


















by telmic-gunma | 2016-11-09 19:05 | HP電卓 | Trackback | Comments(2)

ネットで逆ポーランド法のことを検索していたら「逆ポーランド記法」というのがほとんどであることに気が付きました。
私は「逆ポーランド法」と思い込んでいたので手元にある日本語マニュアルを調べてみました。(HP35S以外はYHP横河ヒューレットパッカードの製作)

HP25のカタログーーー 逆ポーランド法
HP15C-------- 逆ポーランド法
HP28S-------ー逆ポーランド記法
HP29C-------- 逆ポーランド記法
HP32S-------- 逆ポーランド記法
HP35S--------逆ポーランド方式(発行者記載なし)
HP42S--------???
HP48SX------- 記載なし?(見つからない)
HP97--------- 逆ポーランド記法
(本)カッコのない国ーー後置記法(中置記法との対比のため?)
その他 「逆ポーランド表記法」 なんていうのもネットで見ましたね。

まあ 国家試験では、「逆ポーランド記法」になるのでしょうが、
普通には 意味が通じれば、どうでもいいのじゃないですか。

c0335218_08494459.jpg





by telmic-gunma | 2016-11-03 08:51 | HP電卓 | Trackback | Comments(0)