<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應用 > 第五個試驗----跟我學作單片機運算加減乘除法

          第五個試驗----跟我學作單片機運算加減乘除法

          作者: 時間:2011-02-25 來源:網(wǎng)絡(luò) 收藏

          看到這個題目,呵呵,可能好多人要打石頭哥的板子;7+5等于幾?。窟@還用你教?但是里,數(shù)字是用二進制來表示的:這個就有一點拗口啦/雖然我們的教材到這里你可能還沒有學會一個指令。但是我的意思是首先作幾個試驗,提高大家對的興趣。具體的指令太多了,不過還好,一般我們只需要記住常用的10-20條就夠了。OK,現(xiàn)在開始動手。

          我們寫入以下兩條指令

          MOV P1,#23H
          END

          這個程序大家想必看得懂, 就是把23H這個16進制數(shù)送往P1口(即P1.0--P1.7)匯編得到HEX燒寫后然后把芯片插入實驗卡座; 可以看到P1.0-1.7的狀態(tài)為;

          P1.0 滅

          P1.1 滅

          P1.2 亮

          P1.3 亮

          P1.4 亮

          P1.5 滅

          P1.6 亮

          P1.7 亮

          (倚天開發(fā)套件運行照片)

          為什么會這樣呢?

          注意,因為我們的P1口的8個燈,都是一端接正5V,一端接端口的,那么呢端口為低電平0。發(fā)光管亮。高電平不亮。從高往低排列(從1.7---1.0)那么就是00100011。這個數(shù)字就是23H啦。什么?你不信?好了,請您接著看!00100011二進制呢就是100011,按照數(shù)學的原則前面的0不算數(shù)。

          跟我打開電腦的程序/附件/計算器,然后把計算器設(shè)置為科學型。然后點擊二進制,輸入100011

          然后點擊一下十六進制可以看到數(shù)字變成了23。這就是我們輸入的23H了,

          練習:25H+36H?

          程序如下:

          MOV R0,#25H;將立即數(shù)25送寄存器R0

          MOV A,#36H;將立即數(shù)36送累加器A

          ADD A,R0;將R0與A的內(nèi)容相加,結(jié)果在A

          NOP;空操作

          POV P1,A;將累加器A的值送P1口。

          END;結(jié)束

          將程序編譯以后燒入片子運行;可以看到燈的狀態(tài)為

          P1.0 滅

          P1.1 滅

          P1.2 亮

          P1.3 滅

          P1.4 滅

          P1.5 亮

          P1.6 滅

          P1.7 亮

          就是二進制數(shù)01011011。我們還是用上面的計算器來看看結(jié)果對不對:先將計算器設(shè)置為16進制,輸入25+36=結(jié)果為5E

          然后呢再點擊二進制結(jié)果為1011110,可見結(jié)果完全正確〉

          大家接著可以自行練習

          減法指令SUBB

          乘法指令 MUL

          除法指令 DIV

          的用法, 相信經(jīng)過這一節(jié)的學習,大家對這幾個指令的印象會非常深刻了。同時讓我們對于計算機的數(shù)字有了一個

          深刻的認識。



          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();