我試圖瞭解這些說明的MSP 430處理器做:MSP430彙編指令
(1) MOV.w #0x0055,R5
(2) BIC.w #0xFFEE,R5
(3) BIS.w #0x1144,R5
我一直沒能找到很多解釋的彙編指令,很想找出這些指令在每條指令後執行並存儲在r5寄存器中。有人可以解釋嗎?
我試圖瞭解這些說明的MSP 430處理器做:MSP430彙編指令
(1) MOV.w #0x0055,R5
(2) BIC.w #0xFFEE,R5
(3) BIS.w #0x1144,R5
我一直沒能找到很多解釋的彙編指令,很想找出這些指令在每條指令後執行並存儲在r5寄存器中。有人可以解釋嗎?
MOV
值移動到目的地。在這種情況下,R5
將包含值0x0055。
BIC
清除目標值中的位。如果R5在指令之前包含0x0055,它將包含值0x0011。 (將此視爲反轉的和指令)。
BIS
設置位 - 這實際上與或操作相同。在這條指令之後,R5
將具有值0x1155。
MOV.w #0x0055,R5
執行以下操作:src → dst
BIC.w #0xFFEE,R5
做以下not.src .and. dst → dst
BIS.w #0x1144,R5
執行以下操作:src .or. dst → dst
試想一下,在MSP 430 User Guide
BIS [.W]設置目標BIS.B中的位在目的地
語法BIS SRC,DST或
BIS.W SRC,DST BIS.B SRC,DST操作SRC .OR 的位。 dst - > dst
說明源操作數和目標操作數在邏輯上是「或」的。結果被放入 目的地。源操作數不受影響。
狀態位狀態位不受影響。
模式位OSCOFF,CPUOFF和GIE不是 受影響。
示例RAM字TOM的六個LSB是 集。
BIS#003Fh,TOM;將六個LSB設置在RAM位置TOM
示例設置RAM字節TOM的三個MSB。
BIS.B#0E0h,TOM;設置3個MSB在RAM位置 TOM
當然:
BIC [.W]在目的地BIC.B在目的地
語法BIC SRC
清除位清除比特, dst或
BIC.W src,dst BIC.B src,dst操作.NOT.src .AND。 dst - > dst
描述反向源操作數和目標操作數邏輯與。結果被放入 的目的地。源操作數不受影響。
狀態位狀態位不受影響。
模式位OSCOFF,CPUOFF和GIE不是 受影響。
示例RAM單詞LEO的六個MSB清零了 。
BIC#0FC00h,LEO;在 中清除6個MSB MEM(LEO)
示例RAM字節LEO的五個MSB清零。
BIC.B#0F8h,LEO;清除5個MSB在 拉姆的位置LEO
我能找到相關的鏈接本用戶手冊上這個very website
有什麼可能的原因可以讓任何人不得不投票回答這個問題? –
也許他們反對用勺子餵養那些提出壞問題的人,或者認爲將那麼多文獻複製成答案是過度的。我認爲有些人只是對他們認爲不應該存在的問題回答了問題和大部分答案。 –
真的嗎? [你什麼也沒找到?](https://www.google.com/search?q=msp430+instruction+set) –
維基百科頁面有完整的指令集,不難找到wikipedia.org。 –