日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

匯編語(yǔ)言之內(nèi)存訪(fǎng)問(wèn)(寄存器)

冬至子 ? 來(lái)源:一口吃成大胖紙 ? 作者:一口吃成大胖紙 ? 2023-09-20 14:47 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

內(nèi)存存儲(chǔ)方式

CPU中用16位寄存器來(lái)存儲(chǔ)一個(gè)字(1 word = 2 bytes = 16 bits). 其中高8位存放高字節(jié), 低8位存放低字節(jié). 如下圖, 用0 , 1兩個(gè)內(nèi)存單元存放數(shù)據(jù)20000(4E20H).

圖片

DS和[address]

  1. CPU讀寫(xiě)一個(gè)內(nèi)存單元時(shí),必須要先給出這個(gè)內(nèi)存單元的地址.
  2. 內(nèi)存地址由段地址偏移地址組成.
  3. 數(shù)據(jù)段寄存器DS( Data Segment ), 用來(lái)存放要訪(fǎng)問(wèn)數(shù)據(jù)的段地址.
mov BX, 1000H  #向BX寄存器中寫(xiě)入1000H
mov DS, BX     #將BX寄存器中的值移入DS寄存器
mov AL,[0]     #將地址單元1000h:0中的值移入AX寄存器中的低位.
#"[]"說(shuō)明操作對(duì)象是一個(gè)內(nèi)存單元
  1. "[...]"表示一個(gè)內(nèi)存單元, [0] 表示內(nèi)存單元的偏移地址為0. 在執(zhí)行指令時(shí)8086CPU自動(dòng)讀取DS寄存器中的數(shù)據(jù)作為內(nèi)存單元的 段地址 .
  2. 因?yàn)?086CPU的硬件設(shè)計(jì)無(wú)法使用mov指令直接對(duì)DS寄存器寫(xiě)入數(shù)據(jù).
  3. 段寄存器:
  • 代碼段寄存器CS(Code Segment).
  • 數(shù)據(jù)段寄存器DS(Data Segment).
  • 堆棧段寄存器SS(Stack Segment).
  • 附加段寄存器ES(Extra Segment).
    例題:

圖片

mov、add、sub指令

  1. mov
    • mov 段寄存器, 寄存器.
    • mov 寄存器, 段寄存器.
    • mov 內(nèi)存單元, 寄存器.
    • mov 內(nèi)存單元, 段寄存器.
    • mov 段寄存器, 內(nèi)存單元.
  2. add和sub
    • 不能對(duì)段寄存進(jìn)行操作.

CPU提供的棧機(jī)制

  1. 棧(stack), 有兩個(gè)基本操作: LIFO(Last In First Out)
    1. 入棧: 將新元素放入棧頂.
    2. 出棧: 從棧頂取出一個(gè)元素.
  2. 8086CPU提供入棧(PUSH)和出棧(POP)指令. 例如:
    1. push ax : 表示將寄存器ax中的數(shù)據(jù)送入棧中.
    2. pop ax : 表示從棧頂取出數(shù)據(jù)送入ax.
  3. 注意: 在8060CPU中push/pop操作都是以word(16 bits)為單位. 圖例:
    圖片
  4. CPU如何知道棧頂?shù)牡刂?
    1. 8086CPU中有兩個(gè)寄存器:
      • 段寄存器SS.
      • 寄存器SP.
        *任意時(shí)刻,SS:SP 都指向棧頂元素.

push、pop指令

1. push/pop 寄存器
2. push/pop 段寄存器
3. push/pop 內(nèi)存單元
  1. 將10000H~1000FH這段空間作為棧, 初始棧是空的, 將AX, BX, DS中的數(shù)據(jù)入棧.
分析:
1. 需要設(shè)置??臻g.則需要設(shè)置SS:SP.
2. push AX BX DS.
代碼:
mov ax, 1000   ;將段地址寫(xiě)入寄存器ax.
mov ss, ax     ;將ax寄存器中的值寫(xiě)入ss段寄存器.
mov sp, 0010   ;將偏移地址寫(xiě)入sp寄存器.


;將AX, BX, DS中的數(shù)據(jù)入棧
push ax
push bx
push ds

棧段

  • 棧段就是將一組地址連續(xù), 起始地址為16的倍數(shù)的內(nèi)存單元當(dāng)作??臻g來(lái)使用.
  • 棧段的最大容量為64KB. 因?yàn)樵趫?zhí)行push, pop指令時(shí)只修改SP, 而SP的變化換位是0-FFFFH, 所以為64KB.
聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5620

    瀏覽量

    130455
  • 存儲(chǔ)器
    +關(guān)注

    關(guān)注

    39

    文章

    7758

    瀏覽量

    172277
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    【轉(zhuǎn)】匯編語(yǔ)言入門(mén)教程

    使用的那一種。寄存器學(xué)習(xí)匯編語(yǔ)言,首先必須了解兩個(gè)知識(shí)點(diǎn):寄存器內(nèi)存模型。先來(lái)看寄存器。CPU 本身只負(fù)責(zé)運(yùn)算,不負(fù)責(zé)儲(chǔ)存數(shù)據(jù)。數(shù)據(jù)一般
    發(fā)表于 01-16 11:06

    ARM匯編語(yǔ)言與指令格式資料分享

    1、ARM匯編語(yǔ)言與指令格式介紹匯編語(yǔ)言介紹概念指的是用助記符代替操作碼,用地址符號(hào)或標(biāo)簽(:#&)代替地址碼的編程語(yǔ)言。優(yōu)缺點(diǎn)優(yōu)點(diǎn):可以直接訪(fǎng)問(wèn)硬件目標(biāo),代碼簡(jiǎn)短,執(zhí)行速度快
    發(fā)表于 04-22 16:10

    匯編語(yǔ)言教程-段寄存器的說(shuō)明語(yǔ)句

    匯編語(yǔ)言教程-段寄存器的說(shuō)明語(yǔ)句   在匯編語(yǔ)言源程序中可以定義多個(gè)段,每個(gè)段都要與一個(gè)段寄存器建立一種對(duì)應(yīng)關(guān)系。建立這
    發(fā)表于 03-27 17:17 ?1674次閱讀

    匯編語(yǔ)言

    匯編語(yǔ)言舉例,比如讀寄存器內(nèi)容的源代碼、匯編語(yǔ)言制作的光帶菜單及源程序、獲得操作系統(tǒng)版本的匯編源代碼等
    發(fā)表于 12-31 10:40 ?33次下載

    匯編語(yǔ)言學(xué)習(xí)課件_微處理基礎(chǔ)知識(shí)

    匯編語(yǔ)言學(xué)習(xí)課件 第二章 微處理基礎(chǔ)知識(shí) 2.1 Intel公司80x86系列微處理簡(jiǎn)介 2.2 程序可見(jiàn)寄存器組 2.3 存儲(chǔ)
    發(fā)表于 12-31 10:39 ?0次下載

    51單片機(jī)匯編語(yǔ)言教程_單片機(jī)的特殊功能寄存器

    51單片機(jī)匯編語(yǔ)言教程:7課單片機(jī)的特殊功能寄存器
    發(fā)表于 01-19 15:26 ?0次下載

    寄存器Load/Store內(nèi)存訪(fǎng)問(wèn)指令

    5.4 多寄存器Load/Store內(nèi)存訪(fǎng)問(wèn)指令 多寄存器Load/Store內(nèi)存訪(fǎng)問(wèn)指令也叫批
    發(fā)表于 10-18 15:56 ?1次下載

    匯編語(yǔ)言學(xué)習(xí)

    寄存器 一個(gè)cpu有多個(gè)寄存器 就是cpu中可以存儲(chǔ)數(shù)據(jù)的器件,一個(gè)cpu中有多個(gè)寄存器匯編語(yǔ)言由一下3類(lèi)組成 1、匯編
    發(fā)表于 11-23 18:06 ?14次下載
    <b class='flag-5'>匯編語(yǔ)言</b>學(xué)習(xí)

    [從零學(xué)習(xí)匯編語(yǔ)言] -寄存器詳解

    文章目錄前言一、 存儲(chǔ)與通用寄存器1. 存儲(chǔ)2. 通用寄存器前言上一章我們?cè)?jiǎn)單的介紹過(guò)計(jì)算機(jī)中的一些硬件和軟件的相關(guān)概念,還不熟悉的小伙伴可以點(diǎn)擊下面的鏈接進(jìn)行預(yù)習(xí):[
    發(fā)表于 11-26 20:51 ?8次下載
    [從零學(xué)習(xí)<b class='flag-5'>匯編語(yǔ)言</b>] -<b class='flag-5'>寄存器</b>詳解

    [從零學(xué)習(xí)匯編語(yǔ)言] - 寄存器內(nèi)存訪(fǎng)問(wèn)

    [從零學(xué)習(xí)匯編語(yǔ)言] - 寄存器內(nèi)存訪(fǎng)問(wèn)
    發(fā)表于 11-26 20:51 ?13次下載
    [從零學(xué)習(xí)<b class='flag-5'>匯編語(yǔ)言</b>] - <b class='flag-5'>寄存器</b>與<b class='flag-5'>內(nèi)存</b><b class='flag-5'>訪(fǎng)問(wèn)</b>

    深度剖析ARM內(nèi)核寄存器及基本匯編語(yǔ)言1

    M3/M4內(nèi)核寄存器 * 1.2 A7內(nèi)核寄存器 * 1.3 ARM中的PC指針的值 * 二、ARM匯編語(yǔ)言
    的頭像 發(fā)表于 04-24 09:59 ?1786次閱讀
    深度剖析ARM內(nèi)核<b class='flag-5'>寄存器</b>及基本<b class='flag-5'>匯編語(yǔ)言</b>1

    深度剖析ARM內(nèi)核寄存器及基本匯編語(yǔ)言2

    M3/M4內(nèi)核寄存器 * 1.2 A7內(nèi)核寄存器 * 1.3 ARM中的PC指針的值 * 二、ARM匯編語(yǔ)言
    的頭像 發(fā)表于 04-24 10:00 ?1972次閱讀
    深度剖析ARM內(nèi)核<b class='flag-5'>寄存器</b>及基本<b class='flag-5'>匯編語(yǔ)言</b>2

    深度剖析ARM內(nèi)核寄存器及基本匯編語(yǔ)言3

    M3/M4內(nèi)核寄存器 * 1.2 A7內(nèi)核寄存器 * 1.3 ARM中的PC指針的值 * 二、ARM匯編語(yǔ)言
    的頭像 發(fā)表于 04-24 10:01 ?2611次閱讀
    深度剖析ARM內(nèi)核<b class='flag-5'>寄存器</b>及基本<b class='flag-5'>匯編語(yǔ)言</b>3

    訪(fǎng)問(wèn)CXL 2.0設(shè)備中的內(nèi)存映射寄存器

    計(jì)算快速鏈接 (CXL) 1.1 和 CXL 2.0 規(guī)范在內(nèi)存映射寄存器的放置和訪(fǎng)問(wèn)方式上有所不同。CXL 1.1 規(guī)范將內(nèi)存映射寄存器
    的頭像 發(fā)表于 05-25 16:56 ?3714次閱讀
    <b class='flag-5'>訪(fǎng)問(wèn)</b>CXL 2.0設(shè)備中的<b class='flag-5'>內(nèi)存</b>映射<b class='flag-5'>寄存器</b>

    單片機(jī)匯編語(yǔ)言的結(jié)構(gòu)/數(shù)據(jù)類(lèi)型/匯編指令

    開(kāi)發(fā)匯編語(yǔ)言是為了為機(jī)器級(jí)代碼指令提供助記符或符號(hào),匯編語(yǔ)言程序由助記符組成,因此應(yīng)將它們翻譯成機(jī)器代碼。負(fù)責(zé)這種轉(zhuǎn)換的程序稱(chēng)為匯編程序。匯編語(yǔ)言通常被稱(chēng)為低級(jí)
    的頭像 發(fā)表于 07-07 12:28 ?4767次閱讀
    罗源县| 永仁县| 登封市| 伊金霍洛旗| 芮城县| 邻水| 旬邑县| 三穗县| 海城市| 太仓市| 镇赉县| 观塘区| 涿鹿县| 应用必备| 佳木斯市| 会昌县| 日喀则市| 罗山县| 萨嘎县| 利川市| 炎陵县| 前郭尔| 台州市| 大城县| 集安市| 仁化县| 庆阳市| 平利县| 石首市| 华宁县| 马关县| 乐亭县| 河北省| 集贤县| 巨鹿县| 佛山市| 循化| 大埔县| 石楼县| 英德市| 沙河市|