指令分類
發布時間:2015/9/22 19:29:26 訪問次數:660
接照進位制可分為二進制BIN算術運算指令和BCD碼算術運算指令,各為16條指令,MAX3814CHJ后者在指令中增加大寫字母“B”以示區別。這兩類指令除碼制不同外,概念及格式上是一一對應的,甚至在指令功能編號上,均是相差20。對于同樣的運算,在BIN碼指令中,參與運算的是16位或32位二進制數,而在BCD碼指令中,參與運算的是4位或8位BCD碼數據,對應的也是16位或32位二進制數。如[ F20 +S,D]和[F40 B+S,D],前者表示將S和D中的16位二進制(BIN)數相加,結果送到D中去,后者表示將S和D中的4位
BCD碼數據相加,結果送到D中去。這兩條指令在功能上十分類似,僅是操作數采用的碼制不同,其規律性是顯而易見的。
按照參與運算的數據字長(位數)可以分為單字( 16bit)和雙字(32bit)指令,后者在助記符中以大寫字母“D”區別,在FP1的其他指令中也是采用這種方式。如[F25 -S,D]和[F26 D-S,D],前者是16位的減法運算,可表示為(D)一(S)_+(D),即將
D寄存器中的數減去常數S或S寄存器中的數,然后將結果存到D存器中;后者為32位減法運算,這時雖然只有低位寄存器被指定,操作數寄存器的高位連續的寄存器就要自動參與計算,可以表示為(D+1,D) - (S+I,S)斗(D+1,D),含義是將(D +1,D)兩個連續寄存器中的32位數據減去常數S或(S +1,S)兩個連續寄存器中的32位數據,結果存于(D +1,D)中。
按照運算規則可分為加、減、乘、除四則運算,以及加1、減1共6種基本運算。其中,加l和減1可以看做是加、減運算的特例,執行步數為3步,而普通加、減運算執行步數最少也為5步,因此,在有些程序中適當選用加1和減1指令可起到提高掃描速度的
作用。
按照參與運算的操作數的多少可分為一操作數、二操作數和三操作數。一個操作數的情況僅見于加1相減1指令,類似于遞增或遞減計數器的功能。二操作數的情況僅用于加、減運算,以D表示被加數或被減數,以S表示加數或減數,同時運算結果直接存于D中。三操作數則分別用于加、減、乘、除四種運算,以Sl表示被加(減、乘、除)數,以S2表示加(減、乘、除)數,運算結果存于D中。
接照進位制可分為二進制BIN算術運算指令和BCD碼算術運算指令,各為16條指令,MAX3814CHJ后者在指令中增加大寫字母“B”以示區別。這兩類指令除碼制不同外,概念及格式上是一一對應的,甚至在指令功能編號上,均是相差20。對于同樣的運算,在BIN碼指令中,參與運算的是16位或32位二進制數,而在BCD碼指令中,參與運算的是4位或8位BCD碼數據,對應的也是16位或32位二進制數。如[ F20 +S,D]和[F40 B+S,D],前者表示將S和D中的16位二進制(BIN)數相加,結果送到D中去,后者表示將S和D中的4位
BCD碼數據相加,結果送到D中去。這兩條指令在功能上十分類似,僅是操作數采用的碼制不同,其規律性是顯而易見的。
按照參與運算的數據字長(位數)可以分為單字( 16bit)和雙字(32bit)指令,后者在助記符中以大寫字母“D”區別,在FP1的其他指令中也是采用這種方式。如[F25 -S,D]和[F26 D-S,D],前者是16位的減法運算,可表示為(D)一(S)_+(D),即將
D寄存器中的數減去常數S或S寄存器中的數,然后將結果存到D存器中;后者為32位減法運算,這時雖然只有低位寄存器被指定,操作數寄存器的高位連續的寄存器就要自動參與計算,可以表示為(D+1,D) - (S+I,S)斗(D+1,D),含義是將(D +1,D)兩個連續寄存器中的32位數據減去常數S或(S +1,S)兩個連續寄存器中的32位數據,結果存于(D +1,D)中。
按照運算規則可分為加、減、乘、除四則運算,以及加1、減1共6種基本運算。其中,加l和減1可以看做是加、減運算的特例,執行步數為3步,而普通加、減運算執行步數最少也為5步,因此,在有些程序中適當選用加1和減1指令可起到提高掃描速度的
作用。
按照參與運算的操作數的多少可分為一操作數、二操作數和三操作數。一個操作數的情況僅見于加1相減1指令,類似于遞增或遞減計數器的功能。二操作數的情況僅用于加、減運算,以D表示被加數或被減數,以S表示加數或減數,同時運算結果直接存于D中。三操作數則分別用于加、減、乘、除四種運算,以Sl表示被加(減、乘、除)數,以S2表示加(減、乘、除)數,運算結果存于D中。