タグ

2019年9月29日のブックマーク (3件)

  • FMSLogo 8.3.2

    This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A

    goto_ai
    goto_ai 2019/09/29
  • 続・Logo基礎文法最速実装 - みねこあ

    前回は、とりあえず字句解析、構文解析、実行の一通りができるようになりました。こんなかんじ。 なかなからしくなっては来ましたが、けれど、多くの組み込みコマンド/組み込みオペレーションはまだ未実装ですし、厄介な二項演算子、to〜end での関数定義、くわえて Logo の看板であるタートルグラフィックスが未実装です。むむむ、まだ先は遠いです。 二項演算子 で、その二項演算子なのですが、これがちょっと厄介で。 式 ::= {式 '+' 式 | 値}みたいなものですが、これを再帰下降解析すると、「式 + 式」であることを確定するために、一つ先読みすればいい・・とやろうとしても、演算子の左側が再帰してしまって、無限ループになってしまいます。「左再帰」と言って、再帰降下解析の苦手なパターンの一つなのですがこれは、 式 ::= 項 | 項 { {'+'|'-'|'*'|'/'} 項}* 項 ::= 値み

    続・Logo基礎文法最速実装 - みねこあ
    goto_ai
    goto_ai 2019/09/29
  • CORDICアルゴリズムを導き出す

    CORDICアルゴリズムは組み込み系の数値計算に携わっていると随所でその名を見ます。 むろん、ワークステーション系の恵まれた環境であれば全てはライブラリ化されており、こんなものにはお目に掛かりません。手厚い支援を受けられない組み込みならではの事と言えます。 CORDICアルゴリズムは「実装が簡単でプログラムも単純である」というのがうたい文句ではあるのですが、一方で、CORDICアルゴリズムが正しく動作する理由というのは、プログラムを子細に読んでもわかりません。ある意味、FFTと同じくらい元の数学から乖離した手順を踏んでいると言ってよいでしょう。 以下では数学的背景から順を追って説明し、三角関数のCORDICアルゴリズムを導き出します。是非、このアルゴリズムがいかに巧妙であるかを味わい、楽しんでください。 複素平面と回転子 最初に複素平面の事を考えてみましょう。CORDICアルゴリズムは平面

    CORDICアルゴリズムを導き出す