NQCとは?

NQCはDave Baum氏が開発したLEGO MINDSTORMSで作成した ロボットをRCXを使用して動作させる際に用いるプログラム言語です。
NQCとは(NOT QUITE C、完全なCでは無い)の名の通り C言語によくにたものです。
NQCはwindowsからは直接起動できず、DOSプロンプトから コマンドを直接打ち込んで操作するソフトウェアですが、 Bricx Command Centerという統合開発環境を使えばWindows からNQCを簡単に操作する事が可能です。
LEGO MindStorms Robotics Invention System,通称RIS には付属のプログラム環境が初めから整っていますが、それの 機能も子供向けなだけあって、細かい設定や複雑な命令は 行えません。ところが、このNQCを使えば高度な動きをロボット に命令して操作することが可能になり、RISの面白さの幅も 広がります。


NQCをもう少しくわしく

RISのRCXには標準のファームウェアが搭載されていますが、NQCはこれを変更せず ファームウェアが理解可能なbyte-codeにNQCのソースコードをPC上でコンパイルして IRタワーでRCXへダウンロードします。ファームウェアはダウンロードされたbyte-codeを マシンコードへ変換し、RCXが動作します。
標準のプログラミングツール(RCX Code)との違いは RCXへ転送するbyte-codeをRCX Codeで作成するかNQCでプログラミングをしてbyte-codeにコンパイルして 転送するかの違いです。ただしNQCはGUIでブロックをはめていくようにプログラムを 組んでいくRCX Codeに比べ、C言語に近い書式で細かな命令がプログラミングできる違いがあります。
しかし標準のファームウェアを利用 しているため、ファームウェアの設定上で変数の数等が制限されてしまっているので、 それ以上の拡張は行えません。
しかし制限されているといっても、かなりの動作が可能です。プログラムを作成するにも NQCはとても理解しやすく、C言語が苦手な人でも簡単にプログラムを組む事が可能です。