匯編總結2

一、寄存器

一個典型的cpu是由運算器,控制器,寄存器等器件組成的。

內部總線實現CPU內部各個器件之間的聯系

外部總線實現cpu和主板上其他器件的聯系

AX,BX,CX,DX通用寄存器

SI,DI,BP,SP基址和變址寄存器

CS,SS,DS,ES段寄存器

IP,FLAGS指令指針和標志寄存器

通用寄存器

8086cpu中,寄存器AX,BX,CX,DX通常用于存放一般性數據,稱為通用寄存器,每個寄存器都是16位

為了和早期CPU兼容每一個寄存器都拆成了兩個寄存器單獨使用

AX分為AH和AL

字在寄存器中的存放

一個字由兩個字節組成可以存在一個16位寄存器

字的高八位:存放于通用寄存器的高八位寄存器

字的低八位:存放于通用寄存器的低八位寄存器

MOV AX,20000? ; (AX)=4E20H

? ? ? ? ? ? ? ? ? ? ? ? ? ?? (AH)=4EH

? ? ? ? ? ? ? ? ? ? ? ? ? ?? (AL)=20H

?

匯編指令

mov ax,18 ? 將18送入寄存器AX ? AX=18

add ax,8 將寄存器AX中的數值加上8? AX=AX+8

mov ax,bx 將寄存器bx中的數據送入寄存器ax? AX=BX

add ax,bx 將AX和BX中的數值相加,結果存放在AX中 AX=AX+BX

mov ax,bl 是錯誤的指令原因是指令的兩個操作對象位數不一樣

物理地址

cpu訪問內存單元時要給出內存單元的地址

所有的內存單元構成的存儲空間是一個一維的線性空間。每一個內存單元在這個空間中都有唯一的地址,這個唯一的的地址稱為物理地址。

8086的內部用兩個16位地址通過計算合成得到一個20位的物理地址。

如:1230H*16+00C8H=123C8H

  段地址*16+偏移地址=物理地址

123CH*16+0008H=123C8H

理解成段的起始物理地址是:123C0H

段地址:偏移地址 1230:00C8或123C:0008

可以根據需要,將地址連續、起始物理地址為16倍數的一組內存單元當做一個段使用

CS和IP

CS:代碼段寄存器,用于存放代碼段的[段地址]

IP:指令指針寄存器,用于存放cpu將要讀取的指令在代碼段中的偏移地址

CS:IP對應的物理地址存放的cpu將要讀取的指令

CS*16+IP是指令的物理地址

計算機工作的步驟

cpu基于CS:IP,計算出物理地址,然后得到相應的內存單元讀取指令,送到指令緩沖區

cpu自動修改IP的值,IP=IP+所讀取指令的長度,從而為下一條指令讀取做準備

執行指令 轉到第一步

IP和CS值的修改不能通過mov指令實現,需要借助轉移指令(jmp,call)

同時修改CS IP的內容:jmp 段地址:偏移地址

比如jmp 2AE3:3 ;CS<-2AE3H

? ? ? ? ? ? ? ? ? ? ? ? ? ?? IP<-3H

只修改IP內容:jmp 某一合法寄存器

比如jmp AX ;IP<-AX

?

轉載于:https://www.cnblogs.com/yxy98/p/9935102.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/396089.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/396089.shtml
英文地址,請注明出處:http://en.pswp.cn/news/396089.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

創業者具備的五大技能_一、如今大學生創業需要具備哪些知識與技能?

我參加過兩次互聯網&#xff0b;大賽&#xff0c;分別獲得過省賽的金獎與銀獎&#xff0c;還曾參加山東省大大小小比賽26場&#xff0c;金獎累計獲得12次。對當代創業的大學生所應具備哪些基本素質深有體會。&#xff08;1&#xff09;技能&#xff1a;1、自我認知及科學規劃能…

c語言定時器回調函數的參數,定時器的簡單實現即回調函數的運用

&#xfeff;&#xfeff;這兩天在 研究回調函數就想實現簡單的定時器&#xff0c;如下是鄙人的程序望指教。ios#include #include using namespace std;app#define MAXNUM 256函數typedef void (*timerProcessFunc)(void*);spatypedef struct{unsigned int id;int timeout; /…

BZOJ3387柵欄行動

首先&#xff0c;很容易想到Dp。設f[i][0]表示第i個柵欄走左邊的最短路&#xff0c;f[i][1]表示第i個柵欄走右邊的最短路。 所以&#xff0c;我們要找一個剛好在第i個柵欄的左右邊界下面的柵欄。如圖所示&#xff1a; 則有&#xff1a; f[i][0] min(f[k][0] |Left[i] - Left[…

udacity開源的數據_評論:Udacity數據分析師納米學位計劃

udacity開源的數據by David Venturi大衛文圖里(David Venturi) 評論&#xff1a;Udacity數據分析師納米學位計劃 (Review: Udacity Data Analyst Nanodegree Program) Udacity’s Data Analyst Nanodegree program was one of the first online data science programs in the …

凌晨四點鐘深圳的風景

科比有過一句很勵志的故事&#xff1a;凌晨四點鐘洛杉磯的風景。 很多人把科比當成榜樣&#xff0c;不僅僅因為他精湛的球技&#xff0c;更是因為他遠超常人的職業精神。 其實做到這一點&#xff0c;并不難&#xff0c;難的是堅持。堅持那么早時間起床&#xff0c;堅持十年如一…

小程序沉浸式_古北水鎮紅葉祭嵌入戲精學院 全新文旅沉浸模式讓游客嗨起來...

2020年10月17日-24日&#xff0c;古北水鎮第二屆紅葉祭火熱來襲。今年除了“超級漫展二次元度假”的模式&#xff0c;古北水鎮與頂級沉浸互動體驗運營方——INX戲精學院合作&#xff0c;在深度體驗空間的同時&#xff0c;加入了互動式的實景游戲體驗&#xff0c;通過演員互動&a…

又拍云劉平陽,理性競爭下的技術品牌提升之道

云服務市場趨漸平穩&#xff0c;在這種情況下&#xff0c;就需要通過對某一項技術的深入應用來實現服務的精致化。同時&#xff0c;對品牌的打造和包裝也必不可少。\\又拍云在2010年開始提供云服務&#xff0c;經過多年的發展&#xff0c;以及市場策略的轉變&#xff0c;決定對…

編寫代碼的工作在哪找_編寫事件代碼如何幫助我獲得了出色的工作

編寫代碼的工作在哪找Everyone kept telling me about the importance of networking, but it was always something I blew off. I’m pretty quiet and introverted, particularly when meeting strangers. I thought I just wasn’t built for networking.每個人都在不斷告訴…

int x = 0x13 c語言,2004年7月全國高等教育自學考試微型計算機原理與接口技術試題...

課程代碼&#xff1a;02205第一部分 C語言程序設計一、單項選擇題(在每小題的四個備選答案中&#xff0c;選出一個正確答案&#xff0c;并將正確答案的序號填在題干的括號內。每小題2分&#xff0c;共10分)1.4位無符號二進制數表示的數的范圍是( )。A.0&#xff5e;9999 B.…

iOS開發簡單高效的數據存儲

在iOS開發過程中&#xff0c;不管是做什么應用&#xff0c;都會碰到數據保存的問題&#xff0c;你是用什么方法來持久保存數據的&#xff1f;這是在幾乎每一次關于iOS技術的交流或討論都會被提到的問題&#xff0c;而且大家對這個問題的熱情持續高漲。本文主要從概念上把“數據…

Oracle中Date和Timestamp的區別

Date和Timestamp精度不一樣&#xff1a; 01&#xff09;Timestamp精確到了秒的小數點&#xff08;如&#xff1a;2018-11-13 16:40:03.698&#xff09;&#xff1b; 02&#xff09;Date只精確到整數的秒&#xff08;如&#xff1a;2018-11-13 16:40:03&#xff09; 轉載于:http…

table偏見和HTML仇外心理

by Anthony Ng由Anthony Ng <table>偏見和HTML仇外心理 (<table> prejudice and HTML xenophobia) I was looking over some HTML with a student the other day when we stumbled onto a <table>.前幾天&#xff0c;當我偶然發現一個<table>時&#…

回滾機制_【巨杉數據庫SequoiaDB】巨杉 Tech | 并發性與鎖機制解析與實踐

01概述數據庫是一個多用戶使用的共享資源。當多個用戶并發地存取數據時&#xff0c;在數據庫中就會產生多個事務同時存取同一數據的情況。若對并發操作不加控制就可能會讀取和存儲不正確的數據&#xff0c;破壞數據庫的一致性。加鎖是實現數據庫并發控制的一個非常重要的技術。…

Android系統源碼學習——源碼目錄結構介紹

2019獨角獸企業重金招聘Python工程師標準>>> Android 4.0源碼目錄結構: 本文介紹Android源碼目錄結構&#xff0c;以便讀者理清Android編譯系統核心代碼在Android源代碼的位置。 Android源碼體積非常龐大&#xff0c;由Dalvik虛擬機、Linux內核、編譯系統、框架代碼…

簡答題c語言文件操作順序,計算機基礎與程序設計2012年4月真題試題(02275)

計算機基礎與程序設計2012年4月真題試題與答案解析(02275)計算機基礎與程序設計2012年4月真題試題與答案解析(02275)&#xff0c;本試卷總共100分。一、單項選擇題(本大題共20小題.每小題1分&#xff0c;共20分)在每小題列出的四個備選項中只有一個是符合題目要求的&#xff0c…

匯編實驗3

1.運行如下代碼&#xff1a; assume cs:codecode segment mov ah,2 mov dl,3 add dl,30h int 21h mov ah,2 mov dl,6 add dl,30h int 21h mov ah,4ch int 21hcode endsend 進行匯編運行之后結果為&#xff1a; 將第四行和第九行的寄存器dl的值修改之后代碼如下&#xff1a; a…

聽了一堂《**學院》的課,我也是醉了

這還是首席講師的ppt&#xff0c;這說話咋感覺&#xff0c;不像是技術出身&#xff0c;反倒是MongoDB的銷售人員呢。 這說話&#xff0c;不大講相對&#xff0c;凈他媽的 絕對&#xff0c;這水平&#xff0c;我真醉了。 這牛逼吹得&#xff0c;嘖嘖嘖。 我還是看書吧。 轉載于:…

react 組件引用組件_React Elements VS React組件

react 組件引用組件A few months ago I posted to Twitter what I thought was a simple question:幾個月前&#xff0c;我在Twitter上發布了一個我認為簡單的問題&#xff1a; What surprised me wasn’t the joint confusion around this question, but rather the amount o…

appium 環境搭建(不推薦安裝此版本appium,推薦安裝appium desktop)

一&#xff1a;安裝node.js 1、雙擊這個軟件 2、一鍵安裝&#xff0c;全都下一步&#xff0c;不要私自更改安裝路徑 3、打開cmd&#xff0c;輸入npm&#xff0c;出現如下截圖表示成功 二&#xff1a;安裝appium 1、雙擊appium-installer.exe 2、一鍵安裝&#xff0c;全都下一步…

二級c語言上機題庫及解析,2013年計算機二級C語言上機題庫及答案解析(3)

填空題給定程序中&#xff0c;函數fun的功能是:在形參ss所指字符串數組中&#xff0c;查找含有形參substr所指子串的所有字符串并輸出&#xff0c;若沒找到則輸出相應信息。ss所指字符串數組中共有N個字符串&#xff0c;且串長小于M。程序中庫函數strstr(s1, s2)的功能是在 s1串…