|
10積分
這是KEIL C中一個絕對地址宏指令DBYTE的講解:
DBYTE[address]
說明:在8051內(nèi)部數(shù)據(jù)存儲器里,讀取一個字節(jié)的內(nèi)容
自變量:內(nèi)部數(shù)據(jù)存儲器的地址(0~0xff)
定義:#define DBYTE((unsigned char volatile data *)0)
例子代碼:
#include "absacc.h"
void IRamSet (unsigned char value);
void Main(void)
{
char val = 0
IRamSet (0xaa);
val = DBYTE [0x0032];
DBYTE [0x0032]—0x1b;
}
unsigned char idata address _at_ 0x20; // 這句定義是什么意思呢?
void IRamSet (unsigned char value)
{
unsigned char idata *index = &address;
unsigned char i;
for (i = 0;i < (0x7f —0x20+0x01);i++) // 這個循環(huán)的限制條件是什么意思呢?
{
*index = value;
index ++;
}
}
想請教下,這個程序的大概意思是什么?以及幫我解答下程序中的兩個問題(已經(jīng)注釋出來了) |
|