私はソフトコアプロセッサ、アルテラのNios IIのプログラミングを行っています。以下は、チュートリアルの1つにあるコードです。ハードウェア(DE2ボード)でテストすることでコードを機能させることができますが、理解できませんでした。コード。
#define Switches (volatile char *) 0x0003000
#define LEDs (char *) 0x0003010
void main()
{ while (1)
*LEDs = *Switches;
}
私が知っているのは、定数またはマクロ#defineを定義するために使用されますが、
(char *) 0x0003010なぜ上記のコードで、、のようなキャストがあり#defineますか?- なぜ2つの定数で
SwitchesありLEDs、定数ではなく変数のように機能するのでしょうか。