第16章 直接定位表

16.1描述了單元長度的標號

以前用的標號都是這樣的,它們表示的是起始地址:

注意這里的標號后面都跟了一個冒號,而本節要介紹的標號沒有冒號,它不僅能表示起始地址還能表示內存單元的長度:

至于說內存單元的長度還是根據db和dw來確定的。

16.2在其他段中使用數據標號

帶有冒號的標號只能用在代碼段,不能用在數據段。

如果想在代碼段中用數據標號直接訪問數據,需要用assume將標號所在的段和一個段寄存器聯系起來。

上圖中所示代碼將data段和DS寄存器聯系了起來。

然后需要把DS中的值設置為data段的起始地址,如下所示:

你可以這樣使用數據段內容:

很顯然,現在a和b所代表的數據都是與DS相關連的,所以直接寫出偏移地址來就可以確定數據的位置。

16.3直接定址表

本屆討論用查表的方法編寫程序的技巧。

原來數字型數字和字符型數之間相差了30H,即1+30H=’1’。

16進制中的’A’與10相差37H,即,10+37H=’A’。

我感覺本節內容并不是在講匯編語言,而是在說與復雜的計算比較起來,直接查表是更快的解決方案。但是表需要占用一定的存儲空間,可這是以空間換時間算法思想的一種體現。

能夠通過計算出元素位置從而找到所需元素的表稱為直接定址表。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 8086匯編 本筆記是筆者觀看小甲魚老師(魚C論壇)《零基礎入門學習匯編語言》系列視頻的筆記,在此感謝他和像他一樣...
    Gibbs基閱讀 37,390評論 8 114
  • 國家電網公司企業標準(Q/GDW)- 面向對象的用電信息數據交換協議 - 報批稿:20170802 前言: 排版 ...
    庭說閱讀 11,150評論 6 13
  • 王爽匯編全書知識點大綱 第一章 基礎知識 機器語言 匯編語言的產生 匯編語言的組成 存儲器 cpu對存儲器的讀寫 ...
    2c3ba901516f閱讀 2,453評論 0 1
  • 網絡層簡介 1. 概念 為解決經由多條鏈路的交付問題,從而設計了網絡層。其主要負責主機到主機的交付,并且在分組經過...
    顧慎為閱讀 3,165評論 0 0
  • 杯子的低音調 總是難得一聚 萬千杯酒為此下喉 燒得笑聲沸騰 這火熱的狂潮席卷而來 我裝作古人 亦如來者 以皮囊回應...
    顏族長閱讀 404評論 5 3