1、請寫出如下程式片段中每條邏輯運算指令執行后標志 ZF、SF、和 PF 的狀態:
MOV AL,4CH
AND AL,0F0H
OR BL,4CH
XOR AL,AL
MOV AL,4CH ; ZF不變,SF不變,PF不變
AND AL,0F0H ; ZF=0 ,SF= 0 ,PF=0
OR BL,4CH ; ZF=0 ,SF= 0 ,PF=0 //這句什么意思?怎么鉆出BL?
XOR AL,AL ; ZF=1, SF= 0 ,PF=1?
2、 MOV DL,37H
MOV AL,85H
ADD AL,DL
DAA
AL= 22H , BL= 37H ,CF= 1? //...這里怎么又鉆出BL了?
這里的BL怎么來的?
3、閱讀下列各小題的指令序列,在后面空格中填入該指令序列的執行結果
MOV DX,1F45H
STC
MOV CX,95
XOR CH,0FFH
SBB DX,CX
DX= 1FB0H ,CF= 1 // 怎么做?
4、已知程式段如下。
CMP CX,BX
JNC L1
JNC L2
JMP L3
假設有以下三組CX,BX值,那么在程式執行后,分別轉向哪里?
(1)(CX)=D301H,(BX)=D301H
答:轉向 L1
(2)(CX)=2E50H,(BX)=8301H
答:轉向 L2 //前小后大,不是應該不執行JNC,順序執行到JMP?
(3)(CX)=477BH,(BX)=10DCH
答:轉向 L1
不是應該CMP A,B
LNC LOOP 只要A大于等于B就跳轉到LOOP,否則就順序執行
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/45654.html
標籤:單片機/工控
上一篇:按鍵與8位共陽極數碼管
下一篇:單片機仿真LED動態顯示
