




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、匯編原理 基礎(chǔ)知識(shí)一些基本問題課程內(nèi)容 組成原理的問題與匯編程序的問題 學(xué)習(xí)方法 編程、編程、編程 學(xué)習(xí)目的 理解、融合、貫通 編程環(huán)境 IDE與debug輔導(dǎo)與答疑 ? 考核 平時(shí)0.1+期中0.2+1期末0.7 第一章 基礎(chǔ)知識(shí) 計(jì)算機(jī)由硬件系統(tǒng)和軟件系統(tǒng)的協(xié)同工作完成相應(yīng)的功能,計(jì)算機(jī)是硬件和軟件的綜合體。計(jì)算機(jī)系統(tǒng)組成計(jì)算機(jī)軟件計(jì)算機(jī)系統(tǒng)主存運(yùn)算器控制器內(nèi)部寄存器組CPU主機(jī)輔存I/O設(shè)備外設(shè)計(jì)算機(jī)硬件1.1 基本概念 定義 電子式數(shù)字計(jì)算機(jī),即通常所說的計(jì)算機(jī),是一種把程序以及數(shù)據(jù)用二進(jìn)制的形式進(jìn)行存儲(chǔ),并根據(jù)程序的功能自動(dòng)連續(xù)的對(duì)數(shù)據(jù)進(jìn)行算術(shù)運(yùn)算和邏輯運(yùn)算的工具。 定義 計(jì)算機(jī)系統(tǒng)
2、,由計(jì)算機(jī)硬件(Hardware)系統(tǒng)與軟件(Software)系統(tǒng)兩部分組成。 定義 硬件系統(tǒng),即計(jì)算機(jī)的硬件設(shè)備,指計(jì)算機(jī)系統(tǒng)中各種電子的、機(jī)械的、磁性的、光的器件或裝置;硬件系統(tǒng)是計(jì)算機(jī)系統(tǒng)中看得見、摸得著的物理實(shí)體,是計(jì)算機(jī)的“軀體”。 定義 軟件系統(tǒng),指控制、管理計(jì)算機(jī)硬件以及解決各類應(yīng)用問題的所有程序的總和;軟件系統(tǒng)看不見、摸不著,是計(jì)算機(jī)的“靈魂”。1.1.1馮諾依曼計(jì)算機(jī) 根據(jù)計(jì)算機(jī)的特點(diǎn),計(jì)算機(jī)要實(shí)現(xiàn)的基本功能是:數(shù)據(jù)處理:可以進(jìn)行數(shù)值處理和非數(shù)值處理。數(shù)據(jù)傳送:計(jì)算機(jī)與外界交換數(shù)據(jù)。數(shù)據(jù)存儲(chǔ):存儲(chǔ)程序和數(shù)據(jù)。 1945年,美籍匈牙利數(shù)學(xué)家John Von Neumann提出
3、馮諾依曼計(jì)算機(jī),其特點(diǎn)為: 采用二進(jìn)制代碼表示數(shù)據(jù)與指令。 采用儲(chǔ)存程序工作方式。 運(yùn)算器、儲(chǔ)存器、控制器、I/O設(shè)備構(gòu)成計(jì)算機(jī)硬件系統(tǒng)。馮諾依曼計(jì)算機(jī)工作原理核心是存儲(chǔ)程序的工作方式。1.2.1計(jì)算機(jī)的硬件系統(tǒng) 根據(jù)馮諾依曼提出的計(jì)算機(jī)工作原理,計(jì)算機(jī)硬件的基本組成主要有輸入設(shè)備、存儲(chǔ)器、運(yùn)算器、控制器、輸出設(shè)備5大部件,在計(jì)算機(jī)程序的控制下,完成信息的輸入、存儲(chǔ)、處理、控制以及輸出等功能。組成框圖如圖1-1所示。 運(yùn)算器和控制器合稱中央處理器,簡稱cpu;運(yùn)算器、控制器、內(nèi)存儲(chǔ)器以及輸入、輸出接口電路合稱主機(jī);各種輸入、輸出設(shè)備和外存儲(chǔ)器合稱計(jì)算機(jī)外圍設(shè)備,簡稱外設(shè)。輸入設(shè)備控制器輸出設(shè)備
4、 CPU運(yùn)算器ALU 存儲(chǔ)器指令數(shù)據(jù)結(jié)果請(qǐng)求命令狀態(tài)請(qǐng)求命令命令數(shù)據(jù)結(jié)果地址指令圖1-1計(jì)算機(jī)硬件的基本組成 計(jì)算機(jī)的硬件系統(tǒng)各個(gè)組成部分的功能:1.控制器:是計(jì)算機(jī)中控制執(zhí)行指令的部件,其主要功能包括: 正確執(zhí)行每條指令: 首先是取來一條指令,接著分析這條指令,再按指令格式和功能執(zhí)行這條指令 保證指令按規(guī)定序列自動(dòng)連續(xù)地執(zhí)行。 對(duì)各種異常情況和請(qǐng)求及時(shí)響應(yīng)和處理。 說到底,控制器要向計(jì)算機(jī)各功能部件提供每一時(shí)刻協(xié)同運(yùn)行所需要的控制信號(hào)。 計(jì)算機(jī)的硬件系統(tǒng)各個(gè)組成部分的功能:2.運(yùn)算器:是計(jì)算機(jī)中進(jìn)行數(shù)據(jù)加工的部件,其主要功能包括: 執(zhí)行數(shù)值數(shù)據(jù)的算術(shù)加減乘除等運(yùn)算,或執(zhí)行邏輯數(shù)據(jù)的與或非等邏
5、輯運(yùn)算,由一個(gè)被稱為 ALU 的線路完成。 暫時(shí)存放參加運(yùn)算的數(shù)據(jù)和中間結(jié)果,由多個(gè)通用寄存器來承擔(dān)。 運(yùn)算器通常也是數(shù)據(jù)傳輸?shù)耐?。 計(jì)算機(jī)的硬件系統(tǒng)各個(gè)組成部分的功能:3.存儲(chǔ)器:由高速緩沖存儲(chǔ)器(cache),主存儲(chǔ)器(內(nèi)存),外存儲(chǔ)器(硬盤、光盤)所組成的多級(jí)(層)存儲(chǔ)器系統(tǒng),是計(jì)算機(jī)中用于存儲(chǔ)程序和數(shù)據(jù)的系統(tǒng)。這三級(jí)存儲(chǔ)器各自的功能分工、所用的存儲(chǔ)介質(zhì)的工作原理和特性各不相同。4.輸入設(shè)備:輸入設(shè)備是向計(jì)算機(jī)中送入程序和數(shù)據(jù)的有一定獨(dú)立功能的設(shè)備,用于人機(jī)交互聯(lián)系,如計(jì)算機(jī)鍵盤和鼠標(biāo)等。5.輸出設(shè)備:輸出設(shè)備是計(jì)算機(jī)中用于送出計(jì)算機(jī)內(nèi)部信息的設(shè)備,例如打印機(jī)、 顯示器等??偩€ 使用
6、總線連接計(jì)算機(jī)各個(gè)組成部件,構(gòu)成各組成部件之間信息傳輸通道。定義 總線,是一組能為計(jì)算機(jī)內(nèi)部多個(gè)部件分時(shí)共享的公共信息傳送線路。說明共享,一組總線可以掛接多個(gè)部件。說明分時(shí),同一時(shí)刻,同一組總線只能有一個(gè)發(fā)送源;不同的時(shí)刻,同一組總線可以有不同的發(fā)送源。說明分時(shí)共享,掛接在同一組總線的部件在不同的時(shí)刻使用同一組總線發(fā)送與接受信息。1.總線分類 按傳輸方向單向總線、雙向總線。按總線條數(shù)單總線、多總線。按傳輸信息地址總線(address bus,簡稱ab)、數(shù)據(jù)總線(data bus,簡稱db)、控制總線(control bus,簡稱cb)。2.常用總線結(jié)構(gòu)-單總線結(jié)構(gòu)特點(diǎn) 同一時(shí)刻只允許有一個(gè)部
7、件擁有對(duì)總線的控制權(quán) 總線上的主設(shè)備:擁有對(duì)總線控制權(quán)的部件 同一時(shí)刻只允許有一個(gè)總線的主設(shè)備如圖1-2所示。圖1-2 單總線結(jié)構(gòu) CPU主存接口1接口nI/O設(shè)備I/O設(shè)備總線主設(shè)備常用總線結(jié)構(gòu)-雙總線結(jié)構(gòu)雙總線指存儲(chǔ)總線、I/O總線方式1以cpu為核心的連接方式,如圖1-3所示。CPU主存接口1接口nI/O設(shè)備I/O設(shè)備I/O總線存儲(chǔ)總線圖1-3 cpu為核心的雙總線結(jié)構(gòu) 方式2以存儲(chǔ)器為核心的連接方式,如圖1-4所示。主存cpu接口1接口nI/O設(shè)備I/O設(shè)備I/O總線存儲(chǔ)總線圖1-4 存儲(chǔ)器為核心的雙總線結(jié)構(gòu) 常用總線結(jié)構(gòu)-多總線結(jié)構(gòu)如圖1-6所示。cpucache高速總線存儲(chǔ)管理部件
8、ram次高速總線總線控制器總線控制器低速外部總線高速外部總線圖形卡dmac網(wǎng) 卡鍵 盤軟 盤串行接口音頻口圖1-6 多層總線結(jié)構(gòu) 1.2.2計(jì)算機(jī)的軟件系統(tǒng) 計(jì)算機(jī)的軟件系統(tǒng)可以分為系統(tǒng)軟件和應(yīng)用軟件,簡單分類如下圖1-7所示。軟件系統(tǒng)科學(xué)計(jì)算類程序工程設(shè)計(jì)類程序數(shù)據(jù)處理類程序信息管理類程序自動(dòng)控制類程序情報(bào)檢索類程序操作系統(tǒng)語言處理程序數(shù)據(jù)庫管理系統(tǒng)各種服務(wù)性支撐軟件各種標(biāo)準(zhǔn)程序庫系統(tǒng)軟件應(yīng)用軟件圖1-7 計(jì)算機(jī)軟件系統(tǒng) 1.3計(jì)算機(jī)的層次結(jié)構(gòu) 計(jì)算機(jī)系統(tǒng)以硬件為基礎(chǔ),通過配置各種軟件,形成一個(gè)有機(jī)組合的系統(tǒng)。對(duì)其通常采取一種層次結(jié)構(gòu)觀點(diǎn)去進(jìn)行分析或設(shè)計(jì),也就是從不同的角度將計(jì)算機(jī)系統(tǒng)分成若
9、干級(jí)(層次)。硬件邏輯部件微程序控制器用戶程序硬核機(jī)器語言(指令系統(tǒng))操作系統(tǒng)語言處理程序(解釋、編譯)作為軟件資源的應(yīng)用程序數(shù)學(xué)模型、算法系統(tǒng)分析級(jí)用戶程序級(jí)操作系統(tǒng)級(jí)機(jī)器語言級(jí)微程序級(jí)計(jì)算機(jī)系統(tǒng)逐級(jí)生成過程應(yīng)用計(jì)算機(jī)系統(tǒng)求解問題過程1: 從組成計(jì)算機(jī)硬件軟件劃分的層次結(jié)構(gòu),如圖1-8所示。計(jì)算機(jī)分為系統(tǒng)分析級(jí)、用戶程序級(jí)、操作系統(tǒng)級(jí)、機(jī)器語言級(jí)和微程序級(jí)5個(gè)層次。圖1-8 計(jì)算機(jī)硬件軟件組成層次結(jié)構(gòu) 2: 從計(jì)算機(jī)語言級(jí)劃分的層次結(jié)構(gòu),如圖1-9所示。計(jì)算機(jī)分為機(jī)器語言物理機(jī)、匯編語言虛擬機(jī)、高級(jí)語言虛擬機(jī)、專用語言虛擬機(jī)4個(gè)層次。定義語言級(jí),將計(jì)算機(jī)的功能描述為能執(zhí)行某些程序設(shè)計(jì)語言編寫
10、的程序。定義 虛擬機(jī),通過配置軟件擴(kuò)展機(jī)器功能后所形成的一臺(tái)計(jì)算機(jī),即采用軟件形式表示出來的計(jì)算機(jī)。專用語言虛擬機(jī)高級(jí)語言虛擬機(jī)匯編語言虛擬機(jī)實(shí)際機(jī)器(機(jī)器語言物理機(jī))程序圖1-9 計(jì)算機(jī)語言級(jí)層次結(jié)構(gòu) 數(shù)字邏輯級(jí)級(jí)0硬件電路微程序機(jī)器級(jí)級(jí)1微程序機(jī)器語言級(jí)級(jí)2機(jī)器語言操作系統(tǒng)機(jī)器級(jí)級(jí)3操作系統(tǒng)匯編語言級(jí)級(jí)4匯編程序面向問題的語言級(jí)級(jí)5編譯程序面向用戶支持高一級(jí)語言的編譯或解釋程序3: 從實(shí)際應(yīng)用劃分的層次結(jié)構(gòu),如圖1-10,計(jì)算機(jī)分為數(shù)字邏輯級(jí)、微程序機(jī)器級(jí)、機(jī)器語言級(jí)、操作系統(tǒng)機(jī)器級(jí)、匯編語言級(jí)、面向問題的語言級(jí)6個(gè)層次。圖1-10 計(jì)算機(jī)實(shí)際應(yīng)用層次結(jié)構(gòu) 1.4計(jì)算機(jī)的性能指標(biāo)定義 位(
11、bit),指計(jì)算機(jī)能表示的最基本最小的單位。 在計(jì)算機(jī)中采用二進(jìn)制表示數(shù)據(jù)和指令,故:位就是一個(gè)二進(jìn)制位,有兩種狀態(tài),“0” 和 “1”。定義 字節(jié)(byte,簡寫為b),相鄰的任意8位二進(jìn)制數(shù)稱為一個(gè)字節(jié)。1 Byte = 8 bit 計(jì)算機(jī)中一個(gè)字節(jié)可以表示為:1100 0011 或者 0101 0111字節(jié)單位(k,m,g,t)的換算關(guān)系 1K=1024B=1024*8bit;1M=1024K;1G=1024M;1T=1024M定義 字(word,簡寫為w),是CPU內(nèi)部進(jìn)行數(shù)據(jù)處理的基本單位。定義 字長,每一個(gè)字(word)所包含的二進(jìn)制位數(shù)。常與CPU內(nèi)部的寄存器、 運(yùn)算裝置、總線寬
12、度一致。 字長是衡量cpu工作性能的一個(gè)重要參數(shù),不同類型的cpu有不同的字長。如: Intel 4004cpu是4位Intel 8080cpu是8位(一個(gè)字節(jié))Intel 8088/8086/80286cpu是16位(兩個(gè)字節(jié)) Intel 80386/80486、Pentiumcpu是32位(雙字)一般把一個(gè)字定為16位,則1word=2byte,10110011(高8位)10011001(低8位) 高字節(jié) 低字節(jié)同理一個(gè)雙字(dword)定為32位,則1dword=2word=4byte 高字 低字定義 位編號(hào),為便于描述,對(duì)字節(jié),字和雙字中的各位二進(jìn)制數(shù)進(jìn)行編號(hào)。從低位開始,從右到左依
13、次為0、1、2、。若丐位二進(jìn)制數(shù)表示數(shù)值,可以使用位編號(hào)d0、d1、d2、表示;若該位二進(jìn)制數(shù)表示地址,可以使用位編號(hào)a0、a1、a2、表示。 編號(hào)7654321010100010d7d6d5d4d3d2d1D0a7a6a5a4a3a2a1a0字節(jié)數(shù)值data地址addressD0D7D15D8158101010101010101070A0A7A15A8字的編號(hào)為15-0雙字的編號(hào)依此類推,為31-0定義 主頻,也叫做時(shí)鐘頻率,用來表示微處理器cpu的運(yùn)行速度,主頻越高表明微處理器運(yùn)行越快,主頻的單位是MHz或GHz。 早期微處理器的主頻與外部總線的頻率相同,從80486DX2開始,主頻=外部
14、總線頻率倍頻系數(shù),外部總線頻率通常簡稱為外頻,它的單位也是MHz。外頻越高說明微處理器與系統(tǒng)內(nèi)存數(shù)據(jù)交換的速度越快,因而微型計(jì)算機(jī)的運(yùn)行速度也越快。倍頻系數(shù)是微處理器的主頻與外頻之間相對(duì)比例系數(shù)。通過提高外頻或倍頻系數(shù),可以使微處理器工作在比標(biāo)稱主頻更高的時(shí)鐘頻率上,這就是所謂的超頻。1.5 計(jì)算機(jī)中的信息表示 數(shù)據(jù)信息指令信息數(shù)值型數(shù)據(jù)非數(shù)值型數(shù)據(jù)產(chǎn)生控制信號(hào)的基本依據(jù)帶符號(hào)數(shù)的表示1、真值與機(jī)器數(shù)機(jī)器數(shù):在計(jì)算機(jī)中使用的連同數(shù)符一起數(shù)碼化的數(shù)。真值:正負(fù)號(hào)加絕對(duì)值表示的數(shù)值。常用的機(jī)器數(shù)表示形式有原碼、補(bǔ)碼和反碼。例如:設(shè)機(jī)器字長為8位,有如下真值的原、補(bǔ)、反碼 真值x x 原 x 補(bǔ) x
15、 反 1101000011010000110100001101 0000000000000000000000000 -0100000000000000011111111 -1101100011011111001111110010 1.5.1 數(shù)值型數(shù)據(jù)的表示 定點(diǎn)數(shù)和浮點(diǎn)數(shù)是計(jì)算機(jī)中保存帶小數(shù)的數(shù)值數(shù)據(jù)的兩種編碼方式。定義 定點(diǎn)數(shù),在計(jì)算機(jī)中表示帶小數(shù)的數(shù)值數(shù)據(jù)時(shí),約定小數(shù)點(diǎn)的位置固定在某處不變。根據(jù)小數(shù)點(diǎn)的位置不同,定點(diǎn)數(shù)分為定點(diǎn)整數(shù)和定點(diǎn)小數(shù)兩種。定義 定點(diǎn)整數(shù),小數(shù)點(diǎn)位置固定在最低位之后(即最低位的右邊),即數(shù)值數(shù)據(jù)為純整數(shù)。根據(jù)數(shù)值數(shù)據(jù)是否帶符號(hào),定點(diǎn)整數(shù)分為帶符號(hào)的定點(diǎn)整數(shù)和不帶符號(hào)
16、的定點(diǎn)整數(shù)。定義 定點(diǎn)小數(shù)(純小數(shù)),小數(shù)點(diǎn)位置固定在最高數(shù)值位之前,符號(hào)位之后,即數(shù)值數(shù)據(jù)為帶符號(hào)的純小數(shù)。 定點(diǎn)數(shù)與浮點(diǎn)數(shù)定義 浮點(diǎn)數(shù),在計(jì)算機(jī)中表示帶小數(shù)的數(shù)值數(shù)據(jù)時(shí),小數(shù)點(diǎn)的位置根據(jù)需要可以改變。 不管是采用定點(diǎn)數(shù)還是浮點(diǎn)數(shù)表示帶小數(shù)的數(shù)值數(shù)據(jù),小數(shù)點(diǎn)都不需要出現(xiàn)在計(jì)算機(jī)內(nèi)部的編碼中,小數(shù)點(diǎn)的位置由編碼方式確定。 定點(diǎn)數(shù)與浮點(diǎn)數(shù)無符號(hào)整數(shù)定點(diǎn)整數(shù)定點(diǎn)小數(shù)0000000011111111 025511111111 01111111原原-127127補(bǔ)10000000 01111111補(bǔ) -1281271.1111111 0.1111111原原-(1-2-7) (1-2-7)1.00000
17、00 0.1111111補(bǔ)補(bǔ) -1 (1-2-7)1、定點(diǎn)數(shù)設(shè)機(jī)器字長8位,則一些定點(diǎn)數(shù)的表示范圍如下:E浮點(diǎn)數(shù)真值:N = + R M 浮點(diǎn)數(shù)機(jī)器格式:階碼Ms Es E1 Ek M1 Mn尾數(shù)階符數(shù)符R:階碼底,隱含約定,與尾數(shù)基數(shù)相同。E:階碼,為定點(diǎn)整數(shù),補(bǔ)碼或移碼表示。 其位數(shù)決定數(shù)值范圍;階符表示數(shù)的大小。M:尾數(shù),為定點(diǎn)小數(shù),原碼或補(bǔ)碼表示。 其位數(shù)決定數(shù)的精度;數(shù)符表示數(shù)的正負(fù)。尾數(shù)規(guī)格化:1/2 M 1最高有效位絕對(duì)值為12 、浮點(diǎn)數(shù)(1)典型浮點(diǎn)數(shù)格式Ms:尾數(shù)的符號(hào)位,也是整個(gè)浮點(diǎn)數(shù)的符號(hào)位。尾數(shù)規(guī)格化在浮點(diǎn)數(shù)編碼格式中,為了充分利用尾數(shù)的有效位數(shù),同時(shí)使一個(gè)浮點(diǎn)數(shù)具有確
18、定的表示形式,通常采用浮點(diǎn)數(shù)規(guī)格化形式,即將尾數(shù)的絕對(duì)值限定在某個(gè)范圍之內(nèi)。如果階碼的底為2(即尾數(shù)采用二進(jìn)制表示),則規(guī)格化浮點(diǎn)數(shù)的尾數(shù)應(yīng)滿座條件:1/2=|M|1(保證小數(shù)點(diǎn)后第一位為1),即尾數(shù)一般作為定點(diǎn)純小數(shù),其絕對(duì)值應(yīng)該小于1。一般說來,若采用補(bǔ)碼表示尾數(shù),對(duì)于正數(shù),規(guī)格化尾數(shù)最高數(shù)位m1 =1;對(duì)于負(fù)數(shù),規(guī)格化尾數(shù)最高數(shù)位m1 =0。1001110101100101010例 某計(jì)算機(jī)內(nèi)部浮點(diǎn)數(shù)編碼格式位長12,其中階碼采用4位補(bǔ)碼表示;尾符1位,尾數(shù)7位采用補(bǔ)碼表示。寫出二進(jìn)制數(shù)(-101.011)規(guī)格化浮點(diǎn)數(shù)代碼:(-101.011)B=(-0.101011)2+3 階碼=+3
19、=0 011尾符=“-”=1,尾數(shù)=101011尾數(shù)=(1010110)補(bǔ)碼=(0101001+1)=0101010(2) 表示范圍表示范圍:-231 231 (1-2-9)例:某規(guī)格化浮點(diǎn)數(shù)用補(bǔ)碼表示,其中階碼6位,含1位階符;尾符1位,尾數(shù)9位。階符1位,階碼k位,補(bǔ)碼表示,以2為底;數(shù)符1位,尾數(shù)n位,補(bǔ)碼表示,規(guī)格化。絕對(duì)值最大浮點(diǎn)負(fù)數(shù):最大浮點(diǎn)正數(shù):最小浮點(diǎn)正數(shù):階碼為最大數(shù):2 -1k尾數(shù)為絕對(duì)值最大的負(fù)數(shù):-1尾數(shù)為最大數(shù):階碼為最大數(shù):2 -1k1-2-n階碼為最小數(shù):-2 k尾數(shù)為最小正數(shù):2-1最小絕對(duì)值:2-33(3) 實(shí)用浮點(diǎn)數(shù)格式IEEE754標(biāo)準(zhǔn)的32位浮點(diǎn)數(shù)格式為
20、:階碼S 尾數(shù)數(shù)符31 30 23 22 0階碼:8位以2為底,階碼 = 階碼真值 + 127 。尾數(shù):23位,采用隱含尾數(shù)最高位1的表示方法, 實(shí)際尾數(shù)24位,尾數(shù)真值 = 1 + 尾數(shù)S:數(shù)符,0正1負(fù)。這種格式的非0浮點(diǎn)數(shù)真值為:(-1) 2 (1 + 尾數(shù))S階碼-127(3) 實(shí)用浮點(diǎn)數(shù)格式例如:試將-(0.11)用IEEE短實(shí)數(shù)浮點(diǎn)格式表示出來。階碼S 尾數(shù)數(shù)符31 30 23 22 0階碼:階碼 = 階碼真值 + 127= -1+127=126=(01111110)尾數(shù):為 0.100 02解:-(0.11) = -(1 + 0.1) 22-1數(shù)符:為12該浮點(diǎn)代碼為 1,011
21、11110,100 0階碼8位尾數(shù)23位 1.5.2 字符的表示 1 ASCII碼 美國國家信息交換標(biāo)準(zhǔn)代碼,簡稱ASCII碼。09共10個(gè)數(shù)字字符:30H39H 26個(gè)大寫英文字母:41H5AH一些通用符號(hào)和控制符號(hào) 128個(gè)ASCII碼字符包括 通常一個(gè)字符的ASCII碼占用主存一個(gè)字節(jié)單元,字符序列則占用連續(xù)的主存單元。 26個(gè)小寫英文字母:61H7AH 2 UNICODE編碼 ASCII碼適合英語,但不太適用于其他語言。一些計(jì)算機(jī)公司形成了一個(gè)聯(lián)盟,稱為UNICODE。 UNICODE最基本的思路是將每個(gè)字符和符號(hào)賦予一個(gè)永久、唯一的16位值,即碼點(diǎn)。將每個(gè)字符長度固定為16位長,使軟
22、件的編制簡單了許多。 分配了一些碼點(diǎn)給變音符(112)、標(biāo)點(diǎn)符號(hào)(112)、上下標(biāo)字符(48)、方向字符(48)、算術(shù)運(yùn)算符(256)、幾何圖符(96)和裝飾符號(hào)(192)。 漢語、日語和朝鮮語所需要的符號(hào)。先是1 024個(gè)發(fā)音符號(hào)(如片假名和拼音字母),然后是漢語和日語的象形符號(hào)(20 992)和朝鮮語的Hangul音節(jié)(11 156)。 分配了6 400個(gè)碼點(diǎn)供用戶進(jìn)行本地化時(shí)使用。 每個(gè)符號(hào)為16位,UNICODE共有 65 536個(gè)碼點(diǎn)。整個(gè)碼點(diǎn)空間被劃分為塊,每塊的碼點(diǎn)數(shù)為16的倍數(shù)。碼點(diǎn)分配順序如下: 主要字母表都有各自連續(xù)的空間。例如:拉丁語(336個(gè)碼點(diǎn))、希臘語(144個(gè)碼點(diǎn)
23、)、斯拉夫語(256)。1.5.3 指令信息的表示(不講) 指令:指示計(jì)算機(jī)執(zhí)行某種操作的信息的集合。本節(jié)主要討論:一般指令格式 常用尋址方式 面向用戶指令類型2.3.1 指令格式指令基本格式 操作碼 地址碼1、 指令中的基本信息:操作碼,操作數(shù)地址,操作結(jié)果地址, 下一條指令地址操作數(shù)地址和操作結(jié)果地址2、 地址結(jié)構(gòu)使用隱地址可以減少指令中的地址數(shù),簡化地址結(jié)構(gòu)。(1)三地址指令格式:操作數(shù)地址OP A1 A2 A3 結(jié)果地址下條指令地址功能:轉(zhuǎn)移時(shí),用轉(zhuǎn)移地址修改PC內(nèi)容。(A1)OP(A2) A3(PC) + n PC目的地址(2)二地址指令格式:OP A1 A2 源地址功能:(A1)O
24、P(A2) A1(PC) + n PC雙操作數(shù):(3)一地址指令格式:OP A隱含約定單操作數(shù):功能:(AC)OP(A) AC(PC) + n PCOP(A) A(PC) + n PC(4)零地址指令格式:OP 這種指令不含操作數(shù),有兩種可能: 不需要操作數(shù)的指令; 所需操作數(shù)都是隱含指定。(1) 固定長度操作碼各指令操作碼的位置、位數(shù)固定相同。(2)可變長度操作碼各指令操作碼的位置、位數(shù)不固定,根據(jù)需要變化。3. 操作碼結(jié)構(gòu)關(guān)鍵在設(shè)置擴(kuò)展標(biāo)志。例: 指令字長16位,可含有3、2、1或0個(gè)地址,每個(gè)地址占4位。操作碼 地址碼 15 12 11 8 7 4 3 00000 X Y Z 1110
25、X Y Z.1111 0000 Y Z 1111 1110 Y Z.三地址指令 15條二地址指令 15條1111 1111 0000 Z 1111 1111 1110 Z.一地址指令 15條1111 1111 1111 0000 1111 1111 1111 1111.零地址指令 16條(3)復(fù)合型操作碼操作碼分為幾部分,每部分表示一種操作。例:某機(jī)算邏指令0 1 2 3 4 5 6 7 8 15基本操作 進(jìn)位 移位 回送 判跳 操作數(shù)4、 指令長度(1)變長指令格式可簡化控制,常用于精簡指令系統(tǒng)計(jì)算機(jī)RISC中。合理利用存儲(chǔ)空間。(2)固定長度指令格式2.3.2 常用尋址方式 指令中以什么方
26、式提供操作數(shù)地址或操作數(shù),稱為尋址方式。 尋址方式的含義有二個(gè):一是要表示指令所需的操作數(shù)在何處(如在指令中、寄存器中或主存單元中);二是要給出獲取操作數(shù)地址的方法。 指令約定尋址方式的方法通常有二種:一種是在指令中設(shè)置專門的尋址字段;另一種是由操作碼隱含約定。操作碼OP 立即數(shù)1、 立即尋址指令直接給出操作數(shù)。定長格式:變長格式:基本指令 立即數(shù)數(shù)在指令中,其長度固定、有限。數(shù)在基本指令之后,其長度可變。用來提供常數(shù)、設(shè)置初值等。OP A 2、 直接尋址指令直接給出操作數(shù)地址,根據(jù)該地址可從主存單元中讀取操作數(shù)。尋址過程可描述為:指令 操作數(shù)S 也可表示為:主存操作數(shù)地址操作數(shù)M3、寄存器尋
27、址指令中給出寄存器號(hào)(也稱寄存器地址),從寄存器中獲取操作數(shù)。尋址過程可描述為:OP Ri 指令 操作數(shù)S也可表示為:寄存器號(hào)操作數(shù)RRi 該尋址方式的優(yōu)點(diǎn):尋址速度快可減少一個(gè)操作數(shù)地址的位數(shù)4、間接尋址指令給出存放操作數(shù)地址的主存單元地址,即操作數(shù)的間接地址。尋址過程可描述為:指令也可表示為:A1A2.A2 操作數(shù)S.間址單元OP A1 主存.間址單元地址操作數(shù)M操作數(shù)地址M5、 寄存器間址操作數(shù)在主存單元中,由指令給出寄存器號(hào),該寄存器存放操作數(shù)地址。尋址過程可描述為:指令也可表示為:A. 操作數(shù)SRiOP Ri 主存. 寄存器號(hào)操作數(shù)M操作數(shù)地址RA地址指針 該尋址方式的優(yōu)點(diǎn):尋址速度
28、比間址尋址快可減少一個(gè)操作數(shù)地址的位數(shù)6、 變址尋址指令給出一個(gè)形式地址,并指定一個(gè)寄存器作為變址寄存器,將變址寄存器內(nèi)容與形式地址相加得到操作數(shù)地址。尋址過程可描述為:指令也可表示為:A. 操作數(shù)SRiOP Ri D主存.N變址寄存器 加法器 變址寄存器號(hào)D+N=操作數(shù)地址變址量NR 形式地址D操作數(shù)M變址方式的典型用法:將形式地址作為基準(zhǔn)地址,將變址寄存器內(nèi)容作變化量。7、 基址尋址指令給出一個(gè)形式地址,并給出基址寄存器號(hào),基址寄存器內(nèi)容(作為基準(zhǔn)量)與形式地址相加得到操作數(shù)地址。 基址尋址與變址尋址在形成操作數(shù)地址的方法上很相似,但主要應(yīng)用目的不同: 變址尋址面向用戶,用于訪問字符串、線
29、形表、一維數(shù)組等; 基址尋址面向系統(tǒng),用來解決程序在主存中重定位的問題,以及在有限字長指令中擴(kuò)大尋址空間等。8、 相對(duì)尋址用程序計(jì)數(shù)器PC的內(nèi)容作為基準(zhǔn)地址,指令中給出的形式地址作為位移量(可正可負(fù)),二者相加后形成操作數(shù)的地址。尋址過程可描述為:指令A(yù)+dPCOP dA程序計(jì)數(shù)器 加法器AOP d. 操作數(shù)S.主存.d特點(diǎn): 操作數(shù)地址隨PC內(nèi)容變化而改變,但二者之間的距離不變,可使操作數(shù)與指令在主存中一起移動(dòng); 位移量可正可負(fù),表示操作數(shù)地址可以在指令地址之后或之前。9、 堆棧尋址操作數(shù)存放在主存堆棧中,指令隱含約定由堆棧指針SP寄存器提供堆棧棧頂單元地址,進(jìn)行讀出或?qū)懭?。尋址過程可描述為
30、:指令棧底SPOPA堆棧指針寄存器. 操作數(shù)S.主存.堆棧是一種按“后進(jìn)先出”存取順序進(jìn)行存取的存儲(chǔ)結(jié)構(gòu)。在主存中設(shè)置的堆棧區(qū)有二端,作為起點(diǎn)的一端固定稱為棧底;另一端稱為棧頂。對(duì)堆棧的讀出(彈出)或?qū)懭耄▔喝耄┒际菍?duì)棧頂單元進(jìn)行,因此CPU中設(shè)具有加減計(jì)數(shù)功能的SP指示棧頂?shù)奈恢?。棧頂堆棧堆棧自底向上(按地址碼減少的方向)生成壓棧:SP內(nèi)容減1,再壓(存)入數(shù)。先取數(shù),SP內(nèi)容加1出棧: 主存.(SP)=FF初始化棧頂=棧底 主存.(SP)=FE壓入aa棧頂 主存.(SP)=FE壓入bab棧底棧頂=棧底 主存.(SP)=FE彈出ba指令中怎樣表達(dá)尋址方式: (1)操作碼隱含說明不同尋址方式例
31、:某機(jī)指令操作碼最高兩位00:RR型指令,寄存器-寄存器尋址01:RX型指令,寄存器-變址尋址10:SI型指令,基址-立即尋址11:SS型指令,基址-基址尋址(2)指令中設(shè)置專門字段說明尋址方式例:某機(jī)指令的每個(gè)地址字段中各設(shè)置一個(gè)3位的尋址方式字段。操作碼OP 尋址方式 R 尋址方式 R 源地址字段目的地址字段3位3位2.3.3 指令類型 按指令功能或操作性質(zhì)對(duì)指令分類。1.數(shù)據(jù)傳送類指令源地址 目的地址;且源地址中的數(shù)據(jù)保持不變。數(shù)據(jù)設(shè)置時(shí)需考慮:(1)規(guī)定傳送范圍例: 80X86: IBM370:R M,R RR M,R R,M M(2)指明傳送單位例: 用操作碼說明(VAX-11):用
32、地址量說明(80X86):傳送次數(shù)由計(jì)數(shù)器控制MOVB 8MOV AX,BX (16)MOVW 16MOVL 32MOV AL,BL (8)MOV EAX,EBX (32)例: 80X86的串傳送指令:REP MOVSW(3)采用的尋址方式在尋址方式的設(shè)置上幾乎不受限制,能比較集中地反映指令系統(tǒng)各種尋址方式的實(shí)現(xiàn)。2.輸入/輸出指令各種信息主機(jī) 外設(shè)數(shù)據(jù);控制命令;狀態(tài)。(1)外設(shè)的編址方式I/O接口中寄存器或相當(dāng)部件稱為I/O端口。如何為I/O端口分配地址? I/O端口獨(dú)立編址I/O地址空間不占主存地址空間,可與主存地址空間重疊。=1 訪問存儲(chǔ)器=0 訪問I/O端口需設(shè)置專門的控制線區(qū)分訪問
33、對(duì)象,如為每個(gè)I/O端口分配端口地址;在I/O指令中給出端口地址。M/IO I/O端口與主存單元統(tǒng)一編址I/O端口與主存單元使用一個(gè)地址空間,用不同的地址碼來區(qū)分它們。如將存儲(chǔ)地址空間的低端分配給主存單元,高端分配給I/O端口。 設(shè)置專用I/O指令針對(duì)獨(dú)立編址,用I/O指令訪問I/O端口。指令中說明輸入/輸出操作,并給出端口地址。 (2)I/O指令設(shè)置方式顯式I/O指令例: 80X86的I/O指令 輸入:IN AL,n;端口地址(n) AL(直接端口尋址) IN AL,DX;間接端口地址(DX) AL(間接端口尋址) 輸出:OUT n,AL;(AL) n(直接端口尋址) OUT DX,AL;(
34、AL) (DX)(間接端口尋址) 用傳送指令實(shí)現(xiàn)I/O操作針對(duì)統(tǒng)一編址,用傳送指令訪問I/O端口。不設(shè)專用I/O指令。例. 某機(jī)I/O接口中的寄存器地址為80H,用傳送指令實(shí)現(xiàn)輸入/輸出: MOV 80H,A;將累加器A內(nèi)容輸出到80H端口 MOV A,80H;將80H端口內(nèi)容輸入到累加器A隱式I/O指令 通過I/O處理機(jī)進(jìn)行I/O操作CPU執(zhí)行簡單I/O指令 (啟動(dòng)、停止、查詢、清除)設(shè)置時(shí)需考慮操作數(shù)類型、符號(hào)、進(jìn)制等;運(yùn)算結(jié)束后設(shè)置相應(yīng)狀態(tài)標(biāo)志。兩級(jí)I/O指令包括:加、減、求補(bǔ)、加1、減1、比較等運(yùn)算I/O處理機(jī)執(zhí)行I/O操作指令 (輸入、輸出)3.算術(shù)運(yùn)算類指令4.邏輯運(yùn)算類指令:與、
35、或、非、異或等運(yùn)算可實(shí)現(xiàn)對(duì)操作數(shù)位的設(shè)置、測試、清除、修改等。有的機(jī)器設(shè)置專門的位操作指令。5.移位操作指令 算術(shù)移位、邏輯移位和循環(huán)移位如下圖所示??刂瞥绦驁?zhí)行的順序和選擇執(zhí)行的方向。(1)轉(zhuǎn)移指令6. 程序控制類指令(2)子程序調(diào)用指令與返回指令子程序調(diào)用指令:將返回地址壓入堆棧, 再轉(zhuǎn)到子程序入口地址無條件轉(zhuǎn)移條件轉(zhuǎn)移循環(huán)返回指令:將堆棧中的返回地址彈出,以返回調(diào)用程序(3)軟中斷指令主要用于程序的調(diào)試和系統(tǒng)功能調(diào)用。如80X86的中斷指令 INT n 。7. 串操作指令:串傳送、串比較、串查找等操作 主要用于字符信息的處理8. 數(shù)據(jù)轉(zhuǎn)換指令:數(shù)值轉(zhuǎn)換和數(shù)據(jù)類型轉(zhuǎn)換9. 堆棧操作指令對(duì)堆棧的主要操作是壓入堆棧和彈出堆棧。10. 特權(quán)指令提供給系統(tǒng)軟件使用,一般不直接給普通用戶使用。主要用于系統(tǒng)資源的分配和管理。如檢測用戶的訪問權(quán)限、修改虛擬存儲(chǔ)器管理的段表等。2.3.4 Pentium II指令格式Pentium II指令格式中,操作碼字段(OPCODE)是必須的,其他字段則是可選的。其指令格式如下:1、指令前綴部分指令前綴有4種: 第1種包括4條前綴指令:LOCK、REP、REPE、REPNE。 第2種段指定,顯式地指定該指令使用哪個(gè)寄存器。 第3種
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年川南幼兒師范高等??茖W(xué)校高職單招語文2019-2024歷年真題考點(diǎn)試卷含答案解析
- 2025年山西管理職業(yè)學(xué)院高職單招職業(yè)適應(yīng)性測試歷年(2019-2024年)真題考點(diǎn)試卷含答案解析
- 2025年山西體育職業(yè)學(xué)院高職單招語文2019-2024歷年真題考點(diǎn)試卷含答案解析
- 2025年宜春職業(yè)技術(shù)學(xué)院高職單招語文2019-2024歷年真題考點(diǎn)試卷含答案解析
- 2025年安徽廣播影視職業(yè)技術(shù)學(xué)院高職單招職業(yè)適應(yīng)性測試歷年(2019-2024年)真題考點(diǎn)試卷含答案解析
- 2025年寧德職業(yè)技術(shù)學(xué)院高職單招高職單招英語2016-2024歷年頻考點(diǎn)試題含答案解析
- 2025年寧夏民族職業(yè)技術(shù)學(xué)院高職單招職業(yè)適應(yīng)性測試歷年(2019-2024年)真題考點(diǎn)試卷含答案解析
- 2025年寧夏體育職業(yè)學(xué)院高職單招職業(yè)適應(yīng)性測試歷年(2019-2024年)真題考點(diǎn)試卷含答案解析
- 2025年天津鐵道職業(yè)技術(shù)學(xué)院高職單招高職單招英語2016-2024歷年頻考點(diǎn)試題含答案解析
- ASNT培訓(xùn)課件教學(xué)課件
- 2024年專業(yè)技術(shù)人員繼續(xù)教育考試必考100題含答案(完整版)
- 新版人教版高中英語選修一、選修二詞匯表
- 江蘇省南京市聯(lián)合體2023-2024學(xué)年七年級(jí)下學(xué)期期中英語試卷
- (正式版)JBT 14449-2024 起重機(jī)械焊接工藝評(píng)定
- 2024年中國人保招聘筆試參考題庫附帶答案詳解
- 2024年共青團(tuán)入團(tuán)考試題目及答案
- 提高旅游導(dǎo)游服務(wù)技能的培訓(xùn)課程
- 展廳維保方案
- 酒店貸款報(bào)告
- 小學(xué)三年級(jí)下冊(cè)信息技術(shù)全冊(cè)教案
- 鐵路機(jī)車電工
評(píng)論
0/150
提交評(píng)論