日韩在线不卡免费视频一区,日韩欧美精品一区二区三区经典,日产精品码2码三码四码区,人妻无码一区二区三区免费,日本feerbbwdh少妇丰满

  • 回復(fù)
  • 收藏
  • 點(diǎn)贊
  • 分享
  • 發(fā)新帖

請(qǐng)教:如何將絕對(duì)地址賦予結(jié)構(gòu)變量成員?

請(qǐng)教:在C51中,如何將絕對(duì)地址賦給結(jié)構(gòu)變量的成員?請(qǐng)看以下程序段:

 union u{          //定義一個(gè)共用體類型
 uint word;
 struct{uchar hi;uchar lo;}bytes;}; //嵌套定義一個(gè)結(jié)構(gòu)類型變量

 union u nt0;             //定義一個(gè)共用體變量nt0
 nt0.bytes.hi=TH0;     //將TH0的值賦給結(jié)構(gòu)成員hi
 nt0.bytes.lo=TL0;     //將Tl0的值賦給結(jié)構(gòu)成員lo
由于51單片機(jī)的定時(shí)器T0高字節(jié)TH0和低字節(jié)TL0地址不連續(xù),無法使用C51的擴(kuò)展類型SFR16,不得已定義了一個(gè)共用體變量,并將TH0和TL0的內(nèi)容傳送到hi和li中,以便作為一個(gè)整型數(shù)據(jù)參與運(yùn)算,但運(yùn)算結(jié)果還要傳回來,降低了運(yùn)算速度.

能不能在程序的第三行,定義一個(gè)結(jié)構(gòu)類型變量的同時(shí),將TH0和TL0的絕對(duì)地址賦予變量成員hi和li,或者C51不支持? 

 

全部回復(fù)(5)
正序查看
倒序查看
2011-03-29 22:41

發(fā)錯(cuò)地方了吧~

這里搞硬件的相對(duì)多些。

軟件的話,推薦一個(gè)不錯(cuò)的網(wǎng)址:http://www.ourdev.cn/

0
回復(fù)
無衣
LV.6
3
2011-03-31 20:24
@高等數(shù)學(xué)
發(fā)錯(cuò)地方了吧~這里搞硬件的相對(duì)多些。軟件的話,推薦一個(gè)不錯(cuò)的網(wǎng)址:http://www.ourdev.cn/
謝謝指點(diǎn),是一個(gè)好地方.
0
回復(fù)
2011-03-31 20:31
@無衣
謝謝指點(diǎn),是一個(gè)好地方.
我以后也打算學(xué)軟件的,到時(shí)候多向你請(qǐng)教。
0
回復(fù)
elex
LV.2
5
2011-04-01 22:53

對(duì)于多字節(jié)數(shù)據(jù)類型的存儲(chǔ)一般是低字節(jié)在前的。

改成下面的試試?

union u{          //定義一個(gè)共用體類型
 uint word;
 struct{uchar lo;uchar hi;}bytes;}; //嵌套定義一個(gè)結(jié)構(gòu)類型變量

0
回復(fù)
無衣
LV.6
6
2011-04-01 23:24
@elex
對(duì)于多字節(jié)數(shù)據(jù)類型的存儲(chǔ)一般是低字節(jié)在前的。改成下面的試試?unionu{         //定義一個(gè)共用體類型 uintword; struct{ucharlo;ucharhi;}bytes;};//嵌套定義一個(gè)結(jié)構(gòu)類型變量
經(jīng)過軟件仿真,我發(fā)現(xiàn),在VC++6.0中,結(jié)構(gòu)類型各成員是從高地址到低地址順序存放.而在KEIL uV3集成開發(fā)環(huán)境中,則是從低地址到高地址順序存放.
0
回復(fù)
發(fā)