タグ

ブックマーク / www.mztn.org (3)

  • Return of Very Tiny Language

    2019-12-26 Jun Mizutani rvtl, rvtl64 はLinux用の Tiny Basic 系のプログラミング環境です。アセンブラで作成している ため、10-30キロバイトほどの非常に小さいプログラムですが、対話的に操作 できる (REPL:read-eval-print loop) 豊富な機能を持っています。アセンブラで作成していますが、x86、x86_64、ARM、ARM64、PowerPC とほとんどのCPUに対応しています。 日語のコメントつきのアセンブリソース入りです。 BASIC言語系のインタプリタ、エディタ、コマンドラインのヒストリ機能と ファイル名補完、組み込みコマンドとしてLinuxの基コマンド(ls, cat, cd, mkdir, rm, mount, unmount, chmod, mv, rmdir, sync, pwd) や上級者向けコ

    sonota88
    sonota88 2020/08/08
  • GAME80 Compiler

    GAME80コンパイラ解説 (2003/08/05) GAME80コンパイラの作者の中島聡さんにGAME80 コンパイラのソースを掲載する許可を頂きました。 プログラム言語の仕組みに興味がある方にとって非常に参考になると思います。 GAME80コンパイラは、約5.5キロバイト強と非常にコンパクトなソースで記述されています。 コンパイラがこのようなサイズで作成できる理由は、GAME IIIという言語が単純な文法でありながら密度の高い記述ができることにあります。コンパイラがターゲットとする言語自身で書かれていることもGAME80コンパイラの特徴です。自分で自分自身をコンパイルできることは、言語の改善や拡張が容易であり、GAME80コンパイラ以後に多くのマシン用のGAMEコンパイラが開発された理由にもなっています。GAME IIIの文法は GAME86 または VTL系言語の歴史 を参考にして下

  • Assembly Programming Linux

    6. コマンドライン引数と環境変数の処理 アセンブラで作成されたプログラムは,環境変数やコマンドライン引数 にどのようにアクセスしたらいいのでしょうか? プログラムが起動された瞬間のスタックの内容を簡単に示します. この図から環境変数とコマンドライン引数の格納のされ方がわかります. 実際にスタックの内容を表示するプログラムも作ります. +------------------------+ アドレス下位 | | ↑スタックの伸びる方向 +------------------------+ sp | argc | スタックトップ +------------------------+ argv | char *argv[0] | argc = 2 とすると sp-=argc+1 +------------------------+ | char *argv[1] | +-------------

  • 1