日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

王爽 汇编语言第三版 第7章 --- 更灵活的定位内存地址的方法(可以理解为 数组形式的内存定位)

發布時間:2024/7/23 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 王爽 汇编语言第三版 第7章 --- 更灵活的定位内存地址的方法(可以理解为 数组形式的内存定位) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

匯編語言(第三版)王爽著 的十二個實驗:https://blog.csdn.net/OrangeHap/article/details/89791064

?

?

大小端 字節對齊

?

對于 arm,intel 這種 x86 構架的復雜指令 CPU,整數在內存中是倒著存放的,低地址放低位,高地址放高位,小端對齊。
但對于 unix 服務器的 CPU,更多是采用大端對齊的方式存放整數。

?

為什么會有 大端(?高尾端?) 和 小端(?低尾端?)?

這是因為在計算機系統中,我們是以字節為單位的,每個地址單元都對應著一個字節,一個字節為 8bit。但是在C語言中除了8bit的 char之外,還有 16bit 的 short 型,32bit 的 long 型(要看具體的編譯器),另外,對于位數大于8位的處理器,例如16位或者32位的處理器,由于寄存器寬度大于一個字節,那么必然存在著如何將多個字節安排的問題。因此就導致了 大端存儲模式小端存儲模式。例如一個16bit的short型x,在內存中的地址為0x0010,x的值為0x1122,那么0x11為高字節,0x22為低字節。對于大端模式,就將0x11放在低地址中,即0x0010中,0x22放在高地址中,即0x0011中。小端模式,剛好相反。我們常用的X86結構是小端模式,而KEILC51則為大端模式。很多的ARM,DSP都為小端模式。有些ARM處理器還可以由硬件來選擇是大端模式還是小端模式。

參考:http://www.cnblogs.com/graphics/archive/2011/04/22/2010662.html

  • 1. 大端序:數據的高位字節存放在地址的低端,低位字節存放在地址的高端
  • 2. 小端序:數據的高位字節存放在地址的高端,低位字節存放在地址的低端

記憶方式:

  • 大端序:是按照數字的書寫順序進行存儲的。
  • 小端序:是顛倒書寫順序進行存儲的。
  • 涉及大小端的問題,可以記為:“小高高,小弟弟( 低低”。(?這是記小端模式的,有點黃,不過好記那么大端模式就和這個相反

    ?

    ?

    ?

    [bx]?定位內存單元

    ?

    ?

    ?

    ?

    7.5 [bx + idata]?定位內存單元?

    ?

    匯編代碼驗證:

    assume cs:codesg, ds:datasgdatasg segmentdb 16 dup (0) ;db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 datasg endscodesg segmentstart: mov ax,datasgmov ds,axmov ax,190mov ds:[0],axmov ax,6mov ds:[2],axmov ax,0mov ax,ds:[0]mov bx,ds:[1]mov cx,ds:[2]mov ax, 4c00hint 21h codesg ends end start

    運行截圖:

    ?

    ?

    ?

    7.6 使用 [bx + idata ]?方式進行 數組的處理

    ?

    ?

    ?

    7.7? si?和?di?寄存器(?和?bx?功能相近的寄存器

    ?

    ?

    ?

    使用 [ bx (si?或者?di ) + idata ]?方式,使程序變得更簡單

    ?

    ?

    ?

    7.8 [ bx + si ]?和?[ bx + di ]

    ?

    ?

    ?

    ?

    7.9 [ bx + si + idata ]?[ bx + di + idata ]?

    ?

    ?

    ?

    7.10?不同尋址方式靈活應用

    ?

    ?

    ?

    ?

    ?

    ?

    尋址方式 總結

    ?

    ?

    ?

    ?

    總結

    以上是生活随笔為你收集整理的王爽 汇编语言第三版 第7章 --- 更灵活的定位内存地址的方法(可以理解为 数组形式的内存定位)的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。