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

正文內容

微機原理與接口技術復習資料(34)章(文件)

2024-11-19 19:13 上一頁面

下一頁面
 

【正文】 否則,不需要調整 ( 7) DAS 減法的十進制調整指令( Decimal Adjust for Subtraction) 指令格式: DAS 指令功能:將 AL 中兩個壓縮 BCD 數相減后的結果調整為正確的壓縮 BCD 數。 解:運算過程如下: SUB AL, CL 。 - 0000 0110… 減 6 調整 ; 1011 1000… 調整后高半字節(jié) 9 ; - 0110 0000… 減 60H調整 ; 0101 1000…BCD 58 , CF=1 ;結果為 AL=BCD 58, CF=1,表示有借位 ? 乘法指令 (Multiply) ( 1) MUL 無符號數乘法指令( Multiply) 指令格式: MUL 源 指令功能:把源操作數和累加器中的數都當成無符號數,然后將兩個數相乘,操作數可以是字節(jié)或字。即 ( DX, AX) ← AX 源 操作數要求: 可以是寄存器、存儲單元,但不能是立即數;源操作數是存儲單元時,必須在操作數前加 B 或 W 說明是字節(jié)還是字。 據此可檢測并去除結果中的無效前導零。 ② 由于 AH= 06H≠0,高位部分有效,所以置 CF= 1, OF= 1。 ▲ 用 MUL 指令作帶符號數的乘法,會得到錯誤的結果,必須用 IMUL 指令,才能使 (-1)(- 1)得到正確的結果 0000 0000 0000 0001。 AF、 PF、 SF 和 ZF 不定。 ▲ 標志位的影響:影響 ZF、 SF 和 PF,但 AF、 CF 和 OF 無定義。 例 如果 AL 和 BL 中分別存放 9 和 6 的 ASCII 碼,求兩數之積。 AL ← AX/源(字節(jié))的商 AH ← AX/源(字節(jié))的余數 若被除數只有 8 位,必須把 它放在 AL 中,并將 AH 清 0。 ( 2) IDIV 整數除法指令( Integer Division) 指令格式: IDIV 源 指令功能:對兩個 帶符號二進制數進行除法操作(也稱為帶符號數除法) 注意: ▲操作與 DIV 相同; ▲商和余數都是帶符號數,且規(guī)定余數的符號和被除數的相同; ▲指令執(zhí)行后,所有標志位均無定義。 ▲帶符號數除法指令,字節(jié)操作時要求被除數為 16 位,字操作時要求被除數為 32 位,如果被除數不滿足這個條件,不能簡單地將高位置 0,而應該用符號擴展指令( Sign Extension)將被除數轉換成除法指令所要求的格式。( AH 被稱為 AL的符號擴充) 擴展方法: ▲若 AL 中的 D7= 0,則將這個 0 擴展到 AH 中,使 AH= 00H,即: D7 D0 D7 D0 AH AL AH=正數 ▲若 AL 中的 D7= 1,則將這個 1 擴展到 AH 中,使 AH= FFH,即: D7 D0 D7 D0 AH AL AH=負數 注意: CBW 指令執(zhí)行后,不影響標志位。 ( 5) AAD 除法的 ASCII 調整指令 (ASCII Adjust for Division) 指令格式: AAD 指令功能 :在做除法前,把 BCD 碼轉換成二進制數。6= 1 2……3 解:該除法運算過程表示如下: (注: 75以 BCD 碼的形式存放 ) 程序如下: FIRST DB 06H ;除數 6 7 51 2- 61 5- 1 236第 一 個 商 為 1第 一 個 商 為 2第 二 個 余 數 為 3第 一 個 余 數 為 1SECOND DB 75H ;被除數 75H THIRD DB 2 DUP( 0) ;存商 FOUR DB ? ;存余數 …… MOVAH, 00H ;第一個被除數高位 AH 清 0 MOVAL, SECOND ; AL←被除數 75 AND AL, 0F0H ;截取高 4 位 MOVCL, 04H ROL AL, CL ;移至低 4 位 DIV FIRST; AX/06, 即 0007/ 06; ;得結果: AL←商為 1, AH 余數 ←1 MOVTHIRD+1, AL ;結果單元 ←第一個商 1 MOVAL, SECOND ; AL←被除數 75 AND AL, 0FH ; AL←截低 4 位,故 AX= 0105H AAD ;將 AX中內容 0105H 調整為 0FH DIV FIRST ; 0FH/6,結果: AL←商為 2, AH←余數 3 MOV THIRD, AL ; THIRD單元 ←第二個商 2 MOV FOUR, AH 。 ▲根據 AL 寄存器結果影響 SF、 ZF、 PF,但對 OF、 CF、 AF 無定義。 擴展方法:若 AX 的 D15= 0,則 DX ← 0000H; 若 AX 的 D15= 1,則 DX ← FFFFH。 ② 由于 BL 中的除數 04H 為字節(jié),被除數為字,商 1EA1H 大于 AL 中能存放的最大無符號數 FFH,產生除法錯誤中斷。(對于無符號數,允許最大商為 FFH;對于帶符號數,允許商的范圍為 128~ +127,或 80H~+7FH); ? 字操作時:被除數的高 16 位絕對值大于除數的絕對值,則產生溢出。 AX ← ( DX, AX)/源(字)的商 DX ← ( DX, AX)/源(字)的余數 若被除數、除數都是 16 位,則將 16 位被除數送到 AX 中,再將 DX 清 0。 ? 除法指令( Division) ( 1) DIV 無符號數除法指令( Division, unsigned) 指令格式: DIV 源 指令功能:對兩個無符號二進制數進行除法操作。 例 求兩個非壓縮十進制數 09 和 06 之乘積。 調整過程 : 把 AL 寄存器內容除以 10,商放在 AH 中,余數在 AL 中。 ▲存放結果的方式與 MUL 相同: 源操作數為字節(jié):與 AL 相乘,雙倍長結果送到 AX 中; 源操作數為字:與 AX 相乘,雙倍長結果送到 DX 和 AX 中,最后給乘積賦予正確的符號。 解: 用二進制表示成如下形式: 1111 1111 1111 1111 1111 1110 0000 001 ▲ 作為無符號數:表示 255255= 65025,結果正確。 例 設 AL= 55H, BL= 14H,計算它們的積。 如果結果的高半部分(字節(jié)操作為 AH、字操作為 DX)不為零,表明其內容是結果的有效位,則 CF 和 OF 均置 1。即 AX ← AL 源。 - 1001 1000…BCD 98 DAS 。 使用前提:在兩個壓縮十進制數用 SUB 或 SBB 相減后,結果在 AL 中。 ( 6) AAS 減法的 ASCII 調整指令( ASCII Adjust for Subtraction) 指令格式: AAS 指令功能:將 AL 寄存器中的運算結果調整為正確的非壓縮十進制數之差,仍保留在 AL 中。 CF= 0 表示沒有借位, SF 和 OF 無意義。 ④ 在減法操作后,如果源操作數大于目的操作數,需要借位時,進位 /借位標志 CF將被置 1。 用途:用在比較兩個數大小,又不破壞原操作數的場合。 1000 1000…88 。 例 若 AL= BCD 88, BL= BCD 49,求兩數之和。只要使用 AAA 指令,可以不必屏蔽高半字節(jié),便能在 AX 中得到一個正確的非壓縮十進制數。 0110 1110… 低 4 位 9 。 AL = 39 H MOV BL, ‘5’ 。 + 0000 0110… 加 6 調整 ; 0001 0100 ; ∧ 0000 1111… 清高 4 位 ; 0000 0100…AL=4 ; CF=1, AF=1, AH=1 ; 結果為 AX= 0104H,表示非壓縮十進制數 14 ASCII 碼表示的十進制數,高半字節(jié)均為 3,運算時需用 AND 指令將它屏蔽。 解:設 AH= 0,則運算過程如下: ADD AL, BL 。 如果 AF= 1,表示向高位有進位,則進到 AH 寄存器中。 注意: ? 指令主要用在循環(huán)程序中,對地址指針和循環(huán)計數器等進行修改; ? 指令執(zhí)行后影響 AF、 OF、 PF、 SF 和 ZF,但不影響進位標志 CF。 ▲對標志的解釋(人為決定): ① 兩個加數都看成無符號數時,運算結果為 9AH,即十進制數 154。 二進制碼 ( B) 十六進制( H) 無符號二進制( D) 帶符號二進制( D) 非壓 縮十進制 壓縮十進制 0000 0111 07 7 + 7 7 07 1000 1001 89 137 - 119 無效 89 1100 0101 C5 197 - 59 無效 無效 加 法 減 法 ADD 加法 SUB 減法 ADC 帶進位的加法 SBB 帶借位的減法 ? 加法指令( Addition) ? ADD 加法指令( Addition) 指令格式: ADD 目的, 源 指令功能:目的 ? 源 十 目的 ? ADC 帶進位的加法指令( Addition with Carry) 指令格式: ADC 目的, 源 指令功能:目的 ? 源 十 目的 十 CF 注意: ? 源操作數可以是寄存器、存儲器、立即數; ? 目的操作數:只能用寄存器、存儲單元。 例如,對十進制數字 58: 壓縮十進制數表示:只需一個字節(jié),即 0101 1000B; 非壓縮十進制數表示:需兩個字節(jié),即 0000 0101B 和 0000 1000B。 二、算術運算指令 算術運算指令可處理 4 種類型的數: ? 無符號二進制整數 ? 帶符號二進制整數 ? 無符號壓縮十進制整數( Packed Decimal) ? 無符號非壓縮十進制整數( Unpacked Decimal) 一個 8 位二進制數可看成 4 種不同類型的數,所表示的數值亦不同。 注意: ? 要成對使用 PUSHF 和 POPF,可對標志寄存器進行保存和恢復。 ? 執(zhí)行這條指令后,高位標志并不受影響。 注意: ? 位 1 的內容未定義,是任意值。 目的操作數必須是 16 位寄存器,常用 SI寄存器,但不能用段寄存器。 使用時要注意與 MOV 指令的區(qū)別。 OUT 指令:輸出數據或命令給指定的 I/O 端口。 源操作數物理地址= 300010H + 1800H + 20
點擊復制文檔內容
公司管理相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1