請教:在C51中,如何將絕對地址賦給結構變量的成員?請看以下程序段:
union u{ //定義一個共用體類型
uint word;
struct{uchar hi;uchar lo;}bytes;}; //嵌套定義一個結構類型變量
union u nt0; //定義一個共用體變量nt0
nt0.bytes.hi=TH0; //將TH0的值賦給結構成員hi
nt0.bytes.lo=TL0; //將Tl0的值賦給結構成員lo
由于51單片機的定時器T0高字節TH0和低字節TL0地址不連續,無法使用C51的擴展類型SFR16,不得已定義了一個共用體變量,并將TH0和TL0的內容傳送到hi和li中,以便作為一個整型數據參與運算,但運算結果還要傳回來,降低了運算速度.
能不能在程序的第三行,定義一個結構類型變量的同時,將TH0和TL0的絕對地址賦予變量成員hi和li,或者C51不支持?