freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

[高等教育]第四章編程模型與指令系統(tǒng)-資料下載頁

2025-04-13 23:57本頁面
  

【正文】 減法指令 SWI 軟件中斷指令 SWP 交換指令 TEQ 相等測試指令 TST 位測試指令 2022/4/14 86 3 指令條件域 ? 條件執(zhí)行 – 當(dāng)處理器工作在 ARM狀態(tài)時,幾乎所有的指令均根據(jù)CPSR中條件碼的狀態(tài)和指令的條件域有條件的執(zhí)行 – 當(dāng)指令的執(zhí)行條件滿足時,指令被執(zhí)行,否則忽略 ? 條件碼 – 每一條 ARM指令包含 4位的條件碼,位于指令碼的最高4位 [31:28] – 條件碼共有 15種 ,每種條件碼可用兩個字符表示,這兩個字符可 添加在指令助記符的后面 2022/4/14 87 條件碼 助記符后綴 標(biāo) 志 含 義 0000 EQ Z=1 相等 0001 NE Z=0 不相等 0010 CS C=1 無符號數(shù)大于或等于 0011 CC C=0 無符號數(shù)小于 0100 MI N=1 負(fù)數(shù) 0101 PL N=0 正數(shù)或零 0110 VS V=1 溢出 0111 VC V=0 未溢出 1000 HI C=1且 Z=0 無符號數(shù)大于 1001 LS C=0且 Z=1 無符號數(shù)小于或等于 1010 GE N=V 帶符號數(shù)大于或等于 1011 LT N!=V 帶符號數(shù)小于 1100 GT Z=0且 N=V 帶符號數(shù)大于 1101 LE Z=1或 N!=V 帶符號數(shù)小于或等于 1110 AL 忽略 無條件執(zhí)行 2022/4/14 88 3 指令條件域(續(xù)) ? 實(shí)例 – C代碼: if (ab) a++。 else b++。 – ARM代碼: CMP R0, R1 – ADDHI R0, R0, 1 – ADDLS R1, R1, 1 – C代碼: if ((a!=10)amp。amp。(b!=20)) a=a+b。 – ARM代碼: CMP R0, 10 – CMPNE R1, 20 – ADDNE R0, R0, R1 if ((a==10)amp。amp。(b!=20)) a=a+b。 CMP R0, 10 CMPEQ R1, 20 ADDNE R0, R0, R1? 2022/4/14 89 三、 ARM指令集 ? 1 跳轉(zhuǎn)指令 ? 2 數(shù)據(jù)處理指令 ? 3 乘法指令與 乘加指令 ? 4 程序狀態(tài)寄存器訪問指令 ? 5 加載 /存儲指令 ? 6 數(shù)據(jù)交換指令 ? 7 移位指令 ? 8 協(xié)處理器指令 ? 9 異常產(chǎn)生指令 2022/4/14 90 1 跳轉(zhuǎn)指令 ? 在 ARM程序中有兩種方法可以實(shí)現(xiàn)程序的跳轉(zhuǎn) – 直接向程序計數(shù)器 PC寫入跳轉(zhuǎn)地址值 ? 可以 實(shí)現(xiàn)在 4GB的地址空間中的任意跳轉(zhuǎn) ? MOV PC, R14 – 使用專門的跳轉(zhuǎn)指令 ? 跳轉(zhuǎn)指令包括以下 4條指令 – B 跳轉(zhuǎn)指令 – BL 帶返回的跳轉(zhuǎn)指令 – BX 帶狀態(tài)切換的跳轉(zhuǎn)指令 – BLX 帶返回和狀態(tài)切換的跳轉(zhuǎn)指令 2022/4/14 91 2 數(shù)據(jù)處理指令 ? 數(shù)據(jù)處理指令可分為 數(shù)據(jù)傳送指令、算術(shù)邏輯運(yùn)算指令和比較指令 –數(shù)據(jù)傳送指令進(jìn)行數(shù)據(jù)的傳輸 ? MOV MVN –比較指令不保存運(yùn)算結(jié)果,只 更新 CPSR中相應(yīng)的條件標(biāo)志位 –算術(shù)邏輯運(yùn)算指令完成常用的算術(shù)與邏輯的運(yùn)算 ? 該類指令不但將運(yùn)算結(jié)果 保存在目的寄存器 中,同時 更新 CPSR中的相應(yīng)條件標(biāo)志位 2022/4/14 92 2 數(shù)據(jù)處理指令(續(xù)) ? 數(shù)據(jù)處理指令 – MOV 數(shù)據(jù)傳送指令 MVN 數(shù)據(jù)取負(fù)傳送指令 – CMP 比較指令 CMN 取負(fù)比較指令 – TST 位測試指令 TEQ 相等測試指令 – ADD 加法指令 ADC 帶進(jìn)位加法指令 – SUB 減法指令 SBC 帶借位減法指令 – RSB 反向減法指令 RSC 帶借位反向減法指令 – AND 邏輯與指令 ORR 邏輯或指令 – EOR 邏輯異或指令 BIC 位清除指令 2022/4/14 93 3 乘法指令與乘加指令 ? ARM微處理器支持的乘法指令與乘加指令有 6條 –可分為運(yùn)算結(jié)果為 32位和運(yùn)算結(jié)果為 64位兩類 –與前面的數(shù)據(jù)處理指令不同, 指令中的所有操作數(shù)、目的寄存器必須為通用寄存器 ,不能對操作數(shù)使用立即數(shù)或被移位的寄存器 –目的寄存器和第一操作數(shù)必須是不同的寄存器 2022/4/14 94 3 乘法指令與乘加指令(續(xù)) ? 乘法指令與乘加指令( 6條) – MUL 32位乘法指令 ? MUL R0, R1, R2 。 R0=R1*R2 – MLA 32位乘加指令 ? MLA R0, R1, R2, R3 。 R0=R1*R2+R3 – SMULL 64位有符號數(shù)乘法指令 ? SMULL R0, R1, R2, R3 。 R0保存結(jié)果低 32位 。 R1保存結(jié)果高 32位 – SMLAL 64位有符號數(shù)乘加指令 – UMULL 64位無符號數(shù)乘法指令 – UMLAL 64位無符號數(shù)乘加指令 2022/4/14 95 4 程序狀態(tài)寄存器訪問指令 ? ARM微處理器支持程序狀態(tài)寄存器訪問指令 – 用于在 程序狀態(tài)寄存器和通用寄存器 之間傳送數(shù)據(jù) ? 程序狀態(tài)寄存器訪問指令包括以下兩條 – MRS 程序狀態(tài)寄存器到通用寄存器的數(shù)據(jù)傳送指令 ? MRS R0, CPSR ? MRS R0, SPSR – MSR 通用寄存器到程序狀態(tài)寄存器的數(shù)據(jù)傳送指令 ? MSR CPSR, R0 ? MSR SPSR, R0 2022/4/14 96 5 加載 /存儲指令 ? ARM微處理器支持加載 /存儲指令用于在寄存器和存儲器之間傳送數(shù)據(jù) –常用的加載存儲指令如下 ? LDR 字?jǐn)?shù)據(jù)加載指令 ? LDRB 字節(jié)數(shù)據(jù)加載指令 ? LDRH 半字?jǐn)?shù)據(jù)加載指令 ? STR 字?jǐn)?shù)據(jù)存儲指令 ? STRB 字節(jié)數(shù)據(jù)存儲指令 ? STRH 半字?jǐn)?shù)據(jù)存儲指令 ? LDM 批量數(shù)據(jù)加載指令 ? STM 批量數(shù)據(jù)存儲指令 LDR/STR: 左寄存器,右存儲器 LDM/STM: 左存儲器,右寄存器 記憶規(guī)律: R表示寄存器 M表示存儲器 2022/4/14 97 6 數(shù)據(jù)交換指令 ? ARM微處理器所支持?jǐn)?shù)據(jù)交換指令能在 存儲器和寄存器之間交換數(shù)據(jù) ,數(shù)據(jù)交換指令有兩條 – SWP 字?jǐn)?shù)據(jù)交換指令 ? SWP R0, R1, [R2] 。 [R2]?R0, R1?[R2] ? SWP R0, R0, [R1] 。 R0??[R1] – SWPB 字節(jié)數(shù)據(jù)交換指令(低 8位) ? SWPB R0, R1, [R2] 。 [R2]?R0, R1?[R2] ? SWPB R0, R0, [R1] 。 R0??[R1] 2022/4/14 98 7 移位指令 ? ARM微處理器內(nèi)嵌桶型移位器 –移位操作在 ARM指令集中 不作為單獨(dú)的指令使用 ,只能作為指令格式中是一個字段 –移位操作包括如下 6種類型 ? LSL 邏輯左移 – MOVS R3, R1, LSL 2 。 R3=R12 ? ASL 算術(shù)左移 ? LSR 邏輯右移 ? ASR 算術(shù)右移 ? ROR 循環(huán)右移 ? RRX 帶擴(kuò)展的循環(huán)右移 2022/4/14 99 8 協(xié)處理器指令 ? ARM微處理器可支持多達(dá) 16個協(xié)處理器 – 在程序執(zhí)行過程中,每個協(xié)處理器只執(zhí)行針對自身的協(xié)處理指令,忽略 ARM處理器和其他協(xié)處理器的指令 ? ARM的協(xié)處理器指令的作用 – ARM協(xié)處理器 初始化 – ARM協(xié)處理器的 數(shù)據(jù)處理操作 – 在 ARM處理器的寄存器和協(xié)處理器的寄存器之間 傳送數(shù)據(jù) – 在 ARM協(xié)處理器的寄存器和存儲器之間 傳送數(shù)據(jù) 2022/4/14 100 8 協(xié)處理器指令(續(xù)) ? ARM協(xié)處理器指令( 5條) – CDP 協(xié)處理器數(shù)據(jù)操作指令 – LDC 協(xié)處理器數(shù)據(jù)加載指令 – STC 協(xié)處理器數(shù)據(jù)存儲指令 – MCR ARM處理器寄存器到協(xié)處理器寄存器的數(shù)據(jù)傳送指令 – MRC 協(xié)處理器寄存器到 ARM處理器寄存器的數(shù)據(jù)傳送指令 2022/4/14 101 9 異常產(chǎn)生指令 ? ARM微處理器所支持的異常指令 – SWI 軟件中斷指令 ? SWI 0x0 。 調(diào)用 0號軟中斷 ? SWI 0x12 。 調(diào)用 12號軟中斷 – BKPT 斷點(diǎn)中斷指令 ? BKPT 0x00ff ? 產(chǎn)生軟件斷點(diǎn)中斷,用于程序的調(diào)試 2022/4/14 102 四、 Thumb指令集 ? ARM體系結(jié)構(gòu)支持 16位的 Thumb指令集 – Thumb指令集是 ARM指令集的 一個子集 ,允許指令編碼為 16位的長度 –指令對應(yīng) ? 所有的 Thumb指令都有對應(yīng)的 ARM指令 –編程模型對應(yīng) ? Thumb的編程模型對應(yīng)于 ARM的編程模型 –子程序互相調(diào)用 ? 在應(yīng)用程序的編寫過程中,只要遵循一定調(diào)用的規(guī)則, Thumb子程序和 ARM子程序就可以互相調(diào)用 2022/4/14 103 四、 Thumb指令集(續(xù)) ? Thumb指令的特性 – Thumb指令集中的數(shù)據(jù)處理指令的 操作數(shù)仍然是 32位,指令地址也為 32位 –大多數(shù)的 Thumb指令是 無條件執(zhí)行 的,而幾乎所有的 ARM指令都是 有條件執(zhí)行 的 –大多數(shù)的 Thumb數(shù)據(jù)處理指令的 目的寄存器與其中一個源寄存器相同 – Thumb指令的長度為 16位,只用 ARM指令一半的位數(shù)來實(shí)現(xiàn)同樣的功能 ? 要實(shí)現(xiàn)特定的程序功能,所需的 Thumb指令的條數(shù)較 ARM指令多 2022/4/14 104 四、 Thumb指令集(續(xù)) ? 空間效率、時間效率和功耗分析 –存儲空間 ? Thumb代碼約為 ARM代碼的 60%~ 70% ? Thumb代碼使用指令數(shù)比 ARM代碼多約 30%~ 40% –訪存速度 ? 使用 32位存儲器, ARM代碼比 Thumb代碼快約 40% ? 使用 16位存儲器, Thumb代碼比 ARM代碼快約 40%~ 50% –功耗分析 ? 使用 Thumb代碼,存儲器功耗會降低約 30% 2022/4/14 105 四、 Thumb指令集(續(xù)) ? ARM指令集和 Thumb指令集各有其優(yōu)點(diǎn) –對 系統(tǒng)的性能 有較高要求,應(yīng)使用 32位的存儲系統(tǒng)和 ARM指令集 –對 系統(tǒng)的成本及功耗 有較高要求,則應(yīng)使用 16位的存儲系統(tǒng)和 Thumb指令集 –若 兩者結(jié)合 使用,充分發(fā)揮其各自的優(yōu)點(diǎn),會取得更好的效果 2022/4/14 106 本講小結(jié) ? 目的與要求 ?掌握尋址方式、 ARM指令集中的基本指令,以及各指令的應(yīng)用場合及方法 ?熟悉一般 ARM指令以及偽指令 ?了解 Thumb指令 ? 重點(diǎn)與難點(diǎn) ?尋址方式、 ARM指令集中的基本指令 ?指令類型的區(qū)分 2022/4/14 107 補(bǔ)充作業(yè) ? 2 什么是邊界對齊?什么是大小端格式? ? 3 ARM處理器有哪幾種工作狀態(tài)?其各自特點(diǎn)是什么? ? 4 ARM處理器有哪幾種工作模式?其各自特點(diǎn)是什么? ? 5 具體描述 ARM處理器的各種異常。 2022/4/14 108 補(bǔ)充讀物 單板機(jī)( SBC) ? ATX工業(yè)主板 ? MiniITX工業(yè)主板 ? ―單板機(jī) ? ―單板機(jī) ? PC/104單板機(jī) 2022/4/14 109 ATX工業(yè)主板 2022/4/14 110 MiniITX 工業(yè)主板 2022/4/14 111 ” 單板機(jī) 2022/4/14 112 ‖單板機(jī) SBC 支持 Intel174。 Atom 凌動 處理器 2022/4/14 113 PC/104單板機(jī)
點(diǎn)擊復(fù)制文檔內(nèi)容
電大資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1