單片機(jī)邏輯與指令A(yù)NL實(shí)例講解
ANL A,Rn ;A與Rn中的值按位'與',結(jié)果送入A中
ANL A,direct ;A與direct中的值按位'與',結(jié)果送入A中
ANL A,@Ri ;A與間址尋址單元@Ri中的值按位'與',結(jié)果送入A中
ANL A,#data ;A與立即數(shù)data按位'與',結(jié)果送入A中
ANL direct,A ;direct中值與A中的值按位'與',結(jié)果送入direct中
ANL direct,#data ;direct中的值與立即數(shù)data按位'與',結(jié)果送入direct中。
這幾條指令的關(guān)鍵是知道什么是邏輯與。這里的邏輯與是指按位與
例:71H和56H相與則將兩數(shù)寫成二進(jìn)制形式:
(71H) 01110001
(56H) 00100110
結(jié)果 00100000 即20H,從上面的式子能看出,兩個(gè)參與運(yùn)算的值只要其中有一個(gè)位上是0,則這位的結(jié)果就是0,兩個(gè)同是1,結(jié)果才是1。
理解了邏輯與的運(yùn)算規(guī)則,結(jié)果自然就出來(lái)了。看每條指令后面的注釋
下面再舉一些例程來(lái)看。
MOV A,#45H ;(A)=45H
MOV R1,#25H ;(R1)=25H
MOV 25H,#79H ;(25H)=79H
ANL A,@R1 ;45H與79H按位與,結(jié)果送入A中為 41H (A)=41H
ANL 25H,#15H ;25H中的值(79H)與15H相與結(jié)果為(25H)=11H)
ANL 25H,A ;25H中的值(11H)與A中的值(41H)相與,結(jié)果為(25H)=11H