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

正文內(nèi)容

川大學(xué)微機(jī)原理與接口技術(shù)_何小海_第三章指令系統(tǒng)-文庫(kù)吧資料

2025-01-12 03:19本頁(yè)面
  

【正文】 mem,1/CL ;與 SHL是同一條指令 算術(shù)右移指令 SAR SAR reg/mem,1/CL ; reg/mem右移 1/CL位 ;最高位不變,最低位進(jìn)入 CF 例題 數(shù)據(jù)移位 mov dx,6075h 。BL中 D0和 D3清 0,其余位不變 OR BL,00001001b 。 AL=FBH AAS AL=05H,AH=00H,CF=1 MOV AL,08H MOV BL,07H MUL BL。 AL=11H AAA AH=01H,AL=07H,CF=1 MOV AL,48H ADD AL,27H。0FH9,或 AF=1, 則 AL=AL- 06H, AF=1 如果 ALamp。0FH9,或 AF=1, 則 AL=AL+ 06H, AF=1 如果 ALamp。0FH 否則 AL=ALamp。0FH AAS 如果 ALamp。0FH9,或 AF=1, 則 AL=AL+ 06H, AH=AH+ 1, AF=1, CF=AF, AL=ALamp。 源操作數(shù) AX AX DX (除數(shù) ) DX (余數(shù) ) (商 ) 乘法指令舉例 MOV AL,0B4H ; al=b4h=180 MOV BL,11H ; bl=11h=17 MUL BL ; ax=0bf4h=3060 MOV AL,0B4H ; al=b4h=- 76 MOV BL,11H ; bl=11h=17 IMUL BL ; ax=faf4h=- 1292 除法指令舉例 MOV AX,0400H ; ax=400h=1024 MOV BL,0B4H ; bl=b4h=180 DIV BL ;商 al= 05h= 5 ;余數(shù) ah= 7ch= 124 MOV AX,0400H ; ax=400h=1024 MOV BL,0B4H ; bl=b4h=- 76 IDIV BL ;商 al= f3h=- 13 ;余數(shù) ah= 24h= 36 思考 對(duì)于帶符號(hào)數(shù)除法,如- 77除以 +5,可以商- 15,余- 2;也可以商- 16,余+ 3。 DX= 8ACFH , CF=0 12345678H + 789ABCDEH = ? 1234 5678H + 789A BCDEH = 8ACF 1356H 比較指令 CMP( pare) CMP dest,src ;做減法運(yùn)算: dest- src ; CMP指令將目的操作數(shù)減去源操作數(shù),但結(jié)果 不回送 目的操作數(shù) ? 比較指令通過(guò)減法運(yùn)算影響 狀態(tài)標(biāo)志 ,用于比較兩個(gè)操作數(shù)的大小關(guān)系 cmp ax,bx cmp al,100 增量和減量指令 INC reg/mem ;增量(加 1): reg/mem←reg/mem + 1 DEC reg/mem ;減量(減 1): reg/mem←reg/mem - 1 ? INC指令和 DEC指令是單操作數(shù)指令 ? 與加法和減法指令實(shí)現(xiàn)的加 1和減 1不同的是:INC和 DEC不影響 CF標(biāo)志 inc si ; si← si+ 1 dec byte ptr [si] ; [si]← [si]- 1 求補(bǔ)指令 NEG( negtive) NEG reg/mem ; reg/mem←0 - reg/mem ? NEG指令對(duì)操作數(shù)執(zhí)行 求補(bǔ)運(yùn)算 ,即用零減去操作數(shù),然后結(jié)果返回操作數(shù) ? 求補(bǔ)運(yùn)算也可以表達(dá)成: 將操作數(shù)按位取反后加 1 ? NEG指令對(duì)標(biāo)志的影響與用零作減法的SUB指令一樣 ? NEG指令也是一個(gè)單操作數(shù)指令 例題 求補(bǔ)運(yùn)算 mov ax,0ff64h neg al sub al,9dh neg ax dec al neg ax ; AL= 0- 64H= 9CH, AX= FF9CH ; OF= 0 SF= 1, ZF= 0, PF= 1, CF= 1 ; AL= 9CH- 9DH= FFH, AX= FFFFH ; OF= 0, SF= 1, ZF= 0, PF= 1, CF= 1 ; AX= 0- FFFFH= 0001H ; OF= 0, SF= 0, ZF= 0, PF= 0, CF= 1 ; AL= 01H- 1= 0, AX= 0000H ; OF= 0, SF= 0, ZF= 1, PF= 1, CF= 1 ; AX= 0- 0= 0 ; OF= 0, SF= 0, ZF= 1, PF= 1, CF= 0 符號(hào)擴(kuò)展指令 ? 符號(hào)擴(kuò)展是指用一個(gè)操作數(shù)的符號(hào)位(最高位)形成另一個(gè)操作數(shù),形成的新操作數(shù)的高位是全 0(正數(shù))或全 1(負(fù)數(shù)) ? 符號(hào)擴(kuò)展雖然使數(shù)據(jù)位數(shù)加長(zhǎng),但數(shù)據(jù)大小并沒(méi)有改變,擴(kuò)展的高部分僅是低部分的符號(hào)擴(kuò)展 ? 符號(hào)擴(kuò)展指令有兩條,用來(lái)將字節(jié)轉(zhuǎn)換為字,字轉(zhuǎn)換為雙字 CBW ; AL符號(hào)擴(kuò)展成 AX CWD ; AX符號(hào)擴(kuò)展成 DX 例題 符號(hào)擴(kuò)展 mov al,64h ; AL= 64H (機(jī)器數(shù)) ,表示 10進(jìn)制數(shù) 100(真值) cbw ; 將符號(hào) 0擴(kuò)展, AX= 0064H,仍然表示 100 mov ax,0ff00h ; AX= FF00H,表示有符號(hào) 10進(jìn)制數(shù)- 256 cwd ; 將符號(hào)位 “ 1”擴(kuò)展, = FFFFFF00H ;仍然表示- 256 (2) 乘法和除法指令 ? 乘法指令分 無(wú)符號(hào) 和 有符號(hào) 乘法指令 MUL reg/mem ;無(wú)符號(hào)乘法 IMUL reg/mem ;有符號(hào)乘法 ? 除法指令分 無(wú)符號(hào) 和 有符號(hào) 除法指令 DIV reg/mem ;無(wú)符號(hào)除法 IDIV reg/mem ;有符號(hào)除法 乘法和除法指令(續(xù)) ( 8位 ) 源操作數(shù) AL AL AH ( 8位 ) ( 16位 ) 源操作數(shù) AX AX DX ( 16位 ) ( 16位 ) ( 32位 ) (被除數(shù) ) 247。 AX= 1356H , CF=1 mov dx,1234h 。 ? 這類指令會(huì)根據(jù)運(yùn)算結(jié)果影響 狀態(tài)標(biāo)志 ,有時(shí)要利用某些標(biāo)志才能得到正確的結(jié)果;使用他們時(shí)請(qǐng)留心有關(guān)狀態(tài)標(biāo)志 ? 重點(diǎn)掌握 加法指令: ADD、 ADC、 INC 減法指令: SUB 、 SBB、 DEC、 CMP、 NEG (1) 加法和減法指令 ? 加法指令 :ADD, ADC和 INC ? 減法指令 :SUB, SBB, DEC, NEG和 CMP ? 它們分別執(zhí)行字或字節(jié)的加法和減法運(yùn)算,除 INC和 DEC不影響 CF標(biāo)志外,其他按定義影響全部狀態(tài)標(biāo)志位 ? 操作數(shù)組合: 運(yùn)算指令助記符 reg, imm/reg/mem 運(yùn)算指令助記符 mem, imm/reg 運(yùn)算指令助記符 mem/reg 加、減指令 ADD dest,src ; 加法: dest←dest + src ; ADD指令使目的操作數(shù)加上源操作數(shù),和的結(jié)果送到目的操作數(shù) SUB dest,src ; 減法: dest←dest - src ; SUB指令使目的操作數(shù)減去源操作數(shù),差的結(jié)果送到目的操作數(shù) 例題 加法 MOV AX,7348H ; AL= 48H+ 27H= 6FH( 01101111) ; OF= 0, SF= 0, ZF= 0, PF= 1, CF= 0 ADD AX,3FFFH ; AX= 736FH+ 3FFFH= B36EH( 01101110) ; OF= 1, SF= 1, ZF= 0, PF= 0, CF= 0 ; AX= 7348H ADD AL,27H 例題 減法 sub ah,0f0h ; AH= B3H- F0H= C3H(11000011) ; OF= 0, SF= 1, ZF= 0, PF= 1, CF= 1 mov word ptr[0200h],0ef00h ; [0200H]= EF00H,標(biāo)志不變 sub [0200h],ax ; [0200H]= EF00H- C36EH= 2B92H ; OF= 0, SF= 0, ZF= 0, PF= 0, CF= 0 sub si,si ; SI= 0 ; OF= 0, SF= 0, ZF= 1, PF= 1, CF= 0 帶進(jìn)位加、帶借位減指令 ADC dest,src ;加法: dest←dest + src+ CF ; ADC指令除完成 ADD加法運(yùn)算外,還要加上進(jìn)位 CF,結(jié)果送到目的操作數(shù) SBB dest,src ;減法: dest←dest - src- CF ; SBB指令除完成 SUB減法運(yùn)算外,還要減去借位 CF,結(jié)果送到目的操作數(shù) 主要用途是完成多字節(jié)加 、 減法 例題 無(wú)符號(hào)雙字加法和減法 mov ax,5678h 。初始化 SP (b)進(jìn)棧指令 PUSH ? 進(jìn)棧指令先使堆棧指針 SP減 2,然后把一個(gè)字操作數(shù)存入堆棧頂部 PUSH r16/m16/seg ; SP← SP- 2 ; SS:[SP]← r16/m16/seg push ax push [2022h] (c)出棧指令 POP ? 出棧指令把棧頂?shù)囊粋€(gè)字傳送至指定的目的操作數(shù),然后堆棧指針 SP加 2 POP r16/m16/seg ; r16/m16/seg← SS:[SP] ; SP← SP+ 2 pop ax pop wvar 堆棧操作的特點(diǎn) ? 堆棧操作的單位是 字 ,進(jìn)棧和出棧只針對(duì)字操作 ? 字量數(shù)據(jù)從棧頂壓入和彈出時(shí),都是 低地址字節(jié)送低字節(jié),高地址字節(jié)送高字節(jié) ? 堆棧操作遵循 先進(jìn)后出 原則,但可用存儲(chǔ)器尋址方式隨機(jī)存取堆棧中的數(shù)據(jù) ? 堆棧段是程序中不可或缺的一個(gè)內(nèi)存區(qū),常用來(lái) ? 臨時(shí)存放數(shù)據(jù) ? 傳遞參數(shù) ? 保存和恢復(fù)寄存器 保存和恢復(fù)寄存器 push ax ;進(jìn)入子程序后 push bx push ds ... pop ds ;返回主程序前 pop bx pop ax (2) 輸入輸出指令 ? 完成 CPU與外設(shè) I/O端口的信息傳送 ? 有 2條指令 IN OUT IN OUT 輸入輸出指令-概念 ? 端口 外設(shè)與 CPU的接口 ? 端口地址 端口的地址,以區(qū)分不同的端口 ? 端口尋址 ? 直接端口尋址 ? 由指令中的 8位數(shù)決定,范圍 0~255 ? 間接端口尋址 ? 由 DX決定,范圍 0~65535 輸入輸出指令- IN和 OUT IN ac, port 功能: 從端口輸入字節(jié)或字到累加器 如果累加器為 AL,則從端口輸入 1字節(jié) 如果累加器為 AX,則從兩個(gè)連續(xù)端口 port,port+1各輸入 1字節(jié),分別送到 AL、 AH OUT port, ac 功能:將 累加器的內(nèi)容輸出到端口 如果累加器為 AL,則輸出 AL內(nèi)容到端口 如果累加器為 AX,則分別將 AL、 AH內(nèi)容輸出到兩個(gè)連續(xù)端口 port,port+1 輸入輸出指令 IN AL,80H IN AX,80H IN AL, DX IN AX,DX OUT 70H,AL OUT 70H,AX OUT DX,AL OUT DX,AX 注意 接收或發(fā)送的數(shù)據(jù)必須放在累加器 (AX/AL)中 。 ; 基址變址尋址 ⑥ MOV AL, [BX][SI] ⑦ MOV AX, [BP+SI+100H] ; 相對(duì)基址加變址尋址 EA= 0313H+1123H= 1436H, PA= 20220H+1436H= 21436H EA= 0100H+1123H+100H= 1323H, PA= 68000H+1323H= 69323H 數(shù)據(jù)傳送指令 ? 數(shù)據(jù)傳送是計(jì)算機(jī)中最基本、最重要的一種操作 ? 傳送指令也是最常使用的一類指令 ? 傳送指令把數(shù)據(jù)從一個(gè)位置傳送到另一個(gè)位置 ? 除標(biāo)志寄存器傳送指令外,均 不 影響標(biāo)志位 ? 重點(diǎn)掌握 MOV XCHG XLAT PUSH POP IN OUT LEA (1)通用數(shù)據(jù)傳送指令 ? 提供方便靈活的通用傳送操作 ? 有 5條指令 MOV XCHG XLAT PUSH POP MOV XCHG XLAT PUSH POP 傳送指令 MOV( move) ? 把一個(gè)字節(jié)或字的操作數(shù)從源地址傳送至目的地址 MOV reg/m
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1