小蜜蜂
你讓我滾,我滾了。你讓我回來,對(duì)不起,滾遠(yuǎn)了...
級(jí)別: 論壇先鋒
|
三菱程序疑問 MUL D10 K80 D20 DIV D20 D30 D40 MOV D40 D50 求助大家,第一行的乘法中D10乘以K80是生成D20還是D20 D21兩個(gè)?第二行的要用DIV還是DDIV?第三行要用MOV還是DMOV呢?拜托大家了,謝謝!還有從書上看是MUL D0 D2 D4,(D0)乘以(D2)等于(D5 D4),比如D0=8,D2=9,(D5 D4)=72,雖然72遠(yuǎn)遠(yuǎn)小于32767,但是也要存到(D5 D4)中,那上面我的程序是MUL D10 K80 D20 也就是(D21 D20)中了? |
---|---|
|
langman
級(jí)別: 家園?
|
我來說具體一點(diǎn)吧: 1.MUL D10 K80 D20;乘法的結(jié)果占用兩個(gè)寄存器D20(低16位)、D21(高16位) 2.DIV D20 D30 D40;根據(jù)上句程序,按一般使用意圖,這里你當(dāng)然需要用到D20、D21兩個(gè)寄存器,所以這里要用DDIV命令,注意這里很容易搞錯(cuò),用DDIV命令之后,除數(shù)也占用兩個(gè)寄存器D30、D31,而結(jié)果會(huì)占用4個(gè)寄存器,D40 D41(商),D42、D43(余數(shù))。 初學(xué)者這一點(diǎn)很容易搞錯(cuò)。 3.MOV D40 D50,根據(jù)上一句,這里必須要用DMOV命令,如果余數(shù)也要傳送,那還得加一句:DMOV D42 D52; |
|
---|---|---|
|