kue-chip



kue-chip

0 0


kue-chip


On Github hoshinodis / kue-chip

アセンブラ

遊ぼう

KUE-CHIP2

  • 計算機教育用の8ビットのマイクロプロセッサ
  • ASTEM(京都高度技術研究所)で頒布(20万円)高い!!
  • 九州大学,京都大学,立命館大学が開発
  • 解説ページ

なにができるか?

プログラムができる

コード表

さっそく試そう

ユークリッドの互除法

  • 最大公約数を求める

Scala

def gcd(a: Int, b: Int): Int = if (a == 0) b else gcd(b % a, a)

D

T gcd(T a, T b) { return a == b ? b : gcd(b % a, a); }

KUE-CHIP2

 00 :   64 80                   LD      ACC,    [A]
 02 :   6C 81                   LD      IX,     [B]
 04 :   A1              LOOP:   SUB     ACC,    IX
 05 :   32 04                   BZP             LOOP
 07 :   B1                      ADD     ACC,    IX
 08 :   C8                      EOR     IX,     ACC
 09 :   C1                      EOR     ACC,    IX
 0A :   C8                      EOR     IX,     ACC
 0B :   31 04                   BNZ             LOOP
 0D :   74 82                   ST      ACC,    [GCD]
 0F :   0F                      HLT

webにエミュレータがあるよ

もっと高級言語でアセンブリたい!

インラインアセンブラがある言語

まとめ

  • 無理に使うとハマる悪循環
  • KUE-CHIP2を使うと再帰をよく考えるようになる

アセンブラ で 遊ぼう