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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

32位汇编基础_内存_每个应用进程都会有自己独立的4GB内存空间

發(fā)布時間:2025/7/25 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 32位汇编基础_内存_每个应用进程都会有自己独立的4GB内存空间 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1、每個應(yīng)用進程都會有自己獨立的4GB內(nèi)存空間

?

這句話很多人聽起來可能會很矛盾很不解。

例如,我的電腦只有2GB的內(nèi)存,打開個軟件機會占用4GB內(nèi)存,而我的電腦內(nèi)存只有2GB,顯然不夠用,但是為什么程序還能在我的電腦上流暢運行呢?因為程序占用的這4GB內(nèi)存是一個空頭支票,知識口頭上說給你4GB內(nèi)存,其實沒有全部給你,而是你用到多少就會從物理內(nèi)存中給你多少。

2、內(nèi)存地址

內(nèi)存地址不像寄存器那樣只有幾個,內(nèi)存地址有非常多所以起名字的時候都是用編號,每塊內(nèi)存地址都有其唯一的編號,就像寄信的地址一樣,我們滅此用到這塊內(nèi)存時都會根據(jù)它的地址去尋找這塊內(nèi)存。

每個編號(內(nèi)存地址)對應(yīng)的內(nèi)存塊的容量最少是8位,一個字節(jié)。

一個內(nèi)存地址有32位。像0x00000000,是由8個16進制的數(shù)組成,1個16進制的數(shù)對應(yīng)著4個2進制的位,所以4x8=32,一個內(nèi)存地址有32位。

我們來算一下32位的內(nèi)存空間有多大:

內(nèi)存地址一共有多少個(包括0x00000000)  FFFFFFFF+1=100000000

16進制內(nèi)存空間:              800000000

換算成十進制 Bit:             ?? 34359738368

Byte:                  ? 4294967296

KB:                    4194304

MB:                    4096

GB:                    4

現(xiàn)在你可以知道,32位的程序最大就是尋址空間就是4GB,所以每個程序占用4GB的內(nèi)存空間。

向內(nèi)存中存放數(shù)據(jù)

MOV? 指令

mov指令移動數(shù)據(jù)時要保證左右兩邊的數(shù)據(jù)寬度是一樣的。

絕大部分指令是不能把數(shù)據(jù)從內(nèi)存移動到內(nèi)存的。

(1)、立即數(shù)到內(nèi)存

 ?? mov byte ptr ds:[0146FCF4],1

? ? 將立即數(shù)1,寫入內(nèi)存地址為0146FCF4 的地方

  mov :指令

  byte:寫入數(shù)字的大小(1個字節(jié))?? word:2個字節(jié)  dword:4個字節(jié)

  ptr ds:[] :寫入內(nèi)存的哪個地址

  1??? :要寫入的數(shù)據(jù)

?

(2)、寄存器到內(nèi)存

   mov dword ptr ds:[0146FCFC],esp

?  將esp寄存器里面的值寫入內(nèi)存地址為014FCFC的內(nèi)存空間

?

?

(3)內(nèi)存到寄存器

?  mov esp,dword ptr ds:[0x0146FCF8]

?  將內(nèi)存中的值存入寄存器。

?

轉(zhuǎn)載于:https://www.cnblogs.com/chuijingjing/p/9266959.html

總結(jié)

以上是生活随笔為你收集整理的32位汇编基础_内存_每个应用进程都会有自己独立的4GB内存空间的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。