extern far void vectors();中far是什麼意思

       在16位編譯器(Turbo C)中常見,這跟內存尋址有關。

       PC機的內存地址是由段地址和偏移地址組成(彙編中常見的詞),每個段不能超過64K地址。因此在段內尋址,只要用到偏移地址就夠了,因段地址寄存器所存的段地址是不變的,用指針時,只16位夠了(僅表示偏移地址)這類地址稱爲近指針(near型);當要跨段時,即要指明所要存取的段地地和偏移地址時,這時段寄存器中所存段地址要改變,因此要用指針指向另一個段內地址時,此時要用32位表示(段地址:偏移地址),稱遠指針,是far型的。

       簡單的說,比如代碼較近,我們就可一用短指針訪問即near調用,但是如果表示代碼的地址很長,就得用長指針或者間接訪問,後者就是far調用。

       在32位系統中,可以不用理它。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章