青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

C/C++中的近指令、遠指針和巨指針

 今天Ben忽然問我。。。LPVOID中的L是什么意思,一下把我問住了。不可能是長的意思是。查了下。。竟然是遠指針的含義,都沒學過這個東東。學習了下。。以前都沒聽說指針還有遠、近、巨之分的,從沒聽說過什么近指針、遠指針和巨指針。

char near *p; /*定義一個字符型“近”指針*/
char far *p; /*定義一個字符型“遠”指針*/
char huge *p; /*定義一個字符型“巨”指針*/

首先要從8086處理器體系結構和匯編淵源學起。8086是一個16位處理器,它設定了四個段寄存器,專門用來保存段地址:CS(Code Segment):代碼段寄存器;DS(Data Segment):數據段寄存器;SS(Stack Segment):堆棧段寄存器;ES(Extra Segment):附加段寄存器。8086采用段式訪問,訪問本段(64K范圍內)的數據或指令時,不需要變更段地址(意味著段地址寄存器不需修改),而訪問本段范圍以外的數據或指令時,則需要變更段地址(意味著段地址寄存器需要修改)。
因此,在16位處理器環境下,如果訪問本段內地址的值,用一個16位的指針(表示段內偏移)就可以訪問到;而要訪問本段以外地址的值,則需要用16位的段內偏移+16位的段地址,總共32位的指針。

這樣,就可以知道遠、近指針的區別:

近指針是只能訪問本段、只包含本段偏移的、位寬為16位的指針;
遠指針是能訪問非本段、包含段偏移和段地址的、位寬為32位的指針。

近指針只能對64k字節數據段內的地址進行存取,如:

char near *p;
p=(char near *)0xffff;

遠指針是32位指針,它表示段地址:偏移地址,遠指針可以進行跨段尋址,可以訪問整個內存的地址。如定義遠程指針p指向0x1000段的0x2號地址,即1000:0002,則可寫作:
char far *p;
p=(char far *)0x10000002;

除了遠指針和近指針外,還有一個巨指針的概念。
和遠指針一樣,巨指針也是32位的指針,指針也表示為16位段:16位偏移,也可以尋址任何地址。它和遠指針的區別在于進行了規格化處理。遠指針沒有規格化,可能存在兩個遠指針實際指向同一個物理地址,但是它們的段地址和偏移地址不一樣,如23B0:0004和23A1:00F4都指向同一個物理地址23604!巨指針通過特定的例程保證:每次操作完成后其偏移量均小于10h,即只有最低4位有數值,其余數值都被進位到段地址上去了,這樣就可以避免Far指針在64K邊界時出乎意料的回繞的行為。當然,一次操作必須小于64K。下面的函數可以將遠指針轉換為巨指針:
void normalize(void far ** p)
{
  *p=(void far *)(((long)*p&0xffff000f)+(((long)*p&0x0000fff00<<12));
}

從上面的函數中 可以看到指針之指針的使用,這個函數要修改指針的值,因此必須傳給它的指針的指針作為參數。

看到最后。。。。學習到了一點。。讓人很郁悶的事實。。。

近指針、遠指針、巨指針是段尋址的16bit處理器的產物(如果處理器是16位的,但是不采用段尋址的話,也不存在近指針、遠指針、巨指針的概念),當前普通PC所使用的32bit處理器(80386以上)一般運行在保護模式下的,指針都是32位的,可平滑地址,已經不分遠、近指針了。但是在嵌入式系統領域下,8086的處理器仍然有比較廣泛的市場,如AMD公司的AM186ED、AM186ER等處理器,開發這些系統的程序時,我們還是有必要弄清楚指針的尋址范圍。

一個多小的學習。。。。。。。白學了。。。。。。-_______________________________-

posted on 2007-10-16 15:00 Randy 閱讀(903) 評論(1)  編輯 收藏 引用

評論

# re: C/C++中的近指令、遠指針和巨指針 2009-03-01 14:41 lion3875

寫的非常詳細,而且有自己的理解,很不錯的文章,建議對巨指針的解釋再詳細一些,有點沒看明白  回復  更多評論   


只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


<2012年8月>
2930311234
567891011
12131415161718
19202122232425
2627282930311
2345678

導航

統計

常用鏈接

留言簿(3)

隨筆檔案

搜索

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲综合视频在线| 午夜视频一区在线观看| 亚洲综合精品自拍| 久久综合久久综合久久| 免费看av成人| 久久久久久伊人| 免费高清在线视频一区·| 久热re这里精品视频在线6| 久久黄色影院| 免费不卡中文字幕视频| 欧美理论在线播放| 国产精品剧情在线亚洲| 国产欧美日本| 亚洲国产成人久久综合| 日韩亚洲欧美成人| 一本久道久久综合中文字幕| 亚洲欧美日韩一区二区三区在线观看 | 国产精品久久午夜| 国产欧美亚洲精品| 亚洲国产精品v| 这里只有精品丝袜| 欧美中文字幕视频| 亚洲第一精品夜夜躁人人躁| 91久久综合| 亚洲欧洲精品一区二区三区不卡| 一区二区免费在线观看| 久久精品夜色噜噜亚洲a∨| 欧美激情第4页| 亚洲专区一区二区三区| 欧美成人精品在线| 国产日韩欧美综合| 夜夜爽www精品| 噜噜噜噜噜久久久久久91| 一本久久综合亚洲鲁鲁五月天| 欧美日韩在线观看视频| 一区二区三区欧美在线| 欧美成人精品在线| 极品尤物久久久av免费看| 亚洲夜晚福利在线观看| 卡通动漫国产精品| 亚洲欧美日韩综合aⅴ视频| 欧美精品日韩精品| 黄页网站一区| 欧美一区午夜视频在线观看| 亚洲激情不卡| 蜜臀久久99精品久久久画质超高清| 欧美视频在线一区| 99国产精品久久| 欧美成人精品1314www| 亚洲视频一区二区免费在线观看| 亚洲一区二区免费在线| 久久免费国产精品1| 99精品欧美一区二区三区| 久久久久久久综合日本| 国产精品成人一区二区三区夜夜夜| 亚洲国产精品t66y| 欧美freesex8一10精品| 久久福利毛片| 国产一区二区日韩精品欧美精品| 亚洲欧美在线播放| 亚洲自拍都市欧美小说| 国产精品久久久久久久浪潮网站| 日韩视频在线观看国产| 亚洲国产欧美不卡在线观看| 老司机成人在线视频| 在线播放亚洲| 美女黄色成人网| 久久精品午夜| 亚洲国产另类精品专区 | 国产精品海角社区在线观看| 夜夜嗨网站十八久久| 亚洲国产mv| 欧美精品v日韩精品v韩国精品v | 欧美日韩精品免费观看| 亚洲精品欧美日韩| 亚洲电影免费在线| 欧美久久在线| 亚洲一区国产视频| 午夜综合激情| 亚洲成人在线网| 亚洲国产精品传媒在线观看| 欧美激情视频网站| 亚洲影音先锋| 性视频1819p久久| 美女视频网站黄色亚洲| 国产精品永久免费| 亚洲欧洲免费视频| 欧美精品在线观看播放| 亚洲网友自拍| 亚洲欧美清纯在线制服| 国语对白精品一区二区| 欧美高清在线一区二区| 欧美三级视频在线| 久久久久国产免费免费| 欧美a级片网站| 亚洲一级在线观看| 欧美一区二区精品在线| 亚洲欧洲精品成人久久奇米网| 99国产精品视频免费观看一公开| 国产精品爽黄69| 欧美激情精品久久久久久大尺度| 欧美视频一区在线| 欧美成人精品h版在线观看| 欧美日韩少妇| 免费91麻豆精品国产自产在线观看| 欧美不卡一区| 国产女人水真多18毛片18精品视频| 狼人天天伊人久久| 国产精品电影在线观看| 欧美国产精品va在线观看| 国产欧美日韩视频一区二区| 欧美精品www| 久久成人免费电影| 中文在线资源观看网站视频免费不卡| 午夜免费日韩视频| 国产精品99久久久久久宅男| 欧美在线三级| 香蕉成人啪国产精品视频综合网| 欧美国产日产韩国视频| 老色批av在线精品| 国产区在线观看成人精品| 99精品欧美一区二区三区| 亚洲欧洲一区二区在线播放| 久久国产精品第一页| 性xx色xx综合久久久xx| 欧美精品手机在线| 亚洲黄一区二区| 亚洲日本va午夜在线影院| 久久超碰97人人做人人爱| 欧美一区二区三区在线播放| 欧美日韩在线播放三区| 亚洲精品一区二区网址| 亚洲精品小视频| 免费中文字幕日韩欧美| 欧美成人国产| 亚洲激情成人| 欧美fxxxxxx另类| 欧美高清不卡| 亚洲美女在线看| 欧美日韩国产天堂| 亚洲精品男同| 亚洲一区二区精品| 国产精品国产| 午夜精品免费在线| 久久人人看视频| 狠狠色伊人亚洲综合网站色| 久久国产精品一区二区三区| 久久精品国产一区二区三| 国产亚洲在线| 久久免费国产| 亚洲国产91色在线| 夜夜精品视频一区二区| 国产精品老牛| 久久精品国产亚洲aⅴ| 美女999久久久精品视频| 亚洲激情成人| 国产精品vvv| 欧美激情中文不卡| 夜夜夜久久久| 国产精品自在欧美一区| 欧美在线啊v| 亚洲第一久久影院| 亚洲香蕉伊综合在人在线视看| 欧美视频在线一区| 欧美专区在线播放| 亚洲高清不卡在线| 亚洲自拍另类| 伊人成人网在线看| 欧美美女视频| 午夜视频在线观看一区| 亚洲国产精品99久久久久久久久| 亚洲视频在线观看免费| 国产午夜精品美女毛片视频| 久久久综合免费视频| 亚洲最黄网站| 国产丝袜一区二区| 久久亚洲精品欧美| 亚洲国产三级在线| 欧美一区二区三区四区视频| 欧美日韩视频一区二区三区| 亚洲一区二区成人在线观看| 久久综合久色欧美综合狠狠| 99精品国产福利在线观看免费| 国产精品人人做人人爽| 久久亚洲精选| 亚洲私人黄色宅男| 亚洲国产91色在线| 老色鬼久久亚洲一区二区| 亚洲欧美不卡| 亚洲精品在线一区二区| 国产亚洲亚洲| 国产精品红桃| 欧美日韩成人免费| 开心色5月久久精品| 午夜国产精品视频| 在线亚洲国产精品网站| 亚洲黄色一区二区三区| 久久天天狠狠| 一区二区三区日韩精品| 亚洲日韩欧美一区二区在线|