不帶進(jìn)位位的加法指令
ADDA,#DATA;例:ADDA,#10H
ADDA,direct;例:ADDA,10H
ADDA,Rn;例:ADDA,R7
ADDA,@Ri;例:ADDA,@R0
用途:將A中的值與其后面的值相加,最終結(jié)果否是回到A中。
例:MOVA,#30H
ADDA,#10H
則執(zhí)行完本條指令后,A中的值為40H。
下面的題目自行練習(xí)
MOV34H,#10H
MOVR0,#13H
MOVA,34H
ADDA,R0
MOVR1,#34H
ADDA,@R1
帶進(jìn)位位的加法指令
ADDCA,Rn
ADDCA,direct
ADDCA,@Ri
ADDCA,#data
用途:將A中的值和其后面的值相加,并且加上進(jìn)位位C中的值。
說明:由于51單片機(jī)是一種8位機(jī),所以只能做8位的數(shù)學(xué)運算,但8位運算的范圍只有0-255,這在實際工作中是不夠的,因此就要進(jìn)行擴(kuò)展,一般是將2個8位的數(shù)學(xué)運算合起來,成為一個16位的運算,這樣,可以表達(dá)的數(shù)的范圍就可以達(dá)到0-65535。如何合并呢?其實很簡單,讓我們看一個10進(jìn)制數(shù)的例子:
66+78。
這兩個數(shù)相加,我們根本不在意這的過程,但事實上我們是這樣做的:先做6+8(低位),然后再做6+7,這是高位。做了兩次加法,只是我們做的時候并沒有刻意分成兩次加法來做罷了,或者說我們并沒有意識到我們做了兩次加法。之所以要分成兩次來做,是因為這兩個數(shù)超過了一位數(shù)所能表達(dá)的范置(0-9)。
在做低位時產(chǎn)生了進(jìn)位,我們做的時候是在適當(dāng)?shù)奈恢命c一下,然后在做高位加法是將這一點加進(jìn)去。那么計算機(jī)中做16位加法時同樣如此,先做低8位的,如果兩數(shù)相加產(chǎn)生了進(jìn)位,也要“點一下”做個標(biāo)記,這個標(biāo)記就是進(jìn)位位C,在PSW中。在進(jìn)行高位加法是將這個C加進(jìn)去。例:1067H+10A0H,先做67H+A0H=107H,而107H顯然超過了0FFH,因此最終保存在A中的是7,而1則到了PSW中的CY位了,換言之,CY就相當(dāng)于是100H。然后再做10H+10H+CY,結(jié)果是21H,所以最終的結(jié)果是2107H。
帶借位的減法指令
SUBBA,Rn
SUBBA,direct
SUBBA,@Ri
SUBBA,#data
設(shè)(每個H,(R2)=55H,CY=1,執(zhí)行指令SUBBA,R2之后,A中的值為73H。
說明:沒有不帶借位的減法指令,如果需要做不帶位的減法指令(在做第一次相減時),只要將CY清零即可。
乘法指令
MULAB
此指令的功能是將A和B中的兩個8位無符號數(shù)相乘,兩數(shù)相乘結(jié)果一般比較大,因此最終結(jié)果用1個16位數(shù)來表達(dá),其中高8位放在B中,低8位放在A中。在乘積大于FFFFFH(65535)時,0V置1(溢出),否則OV為0,而CY總是0。
例:(A)=4EH,(B)=5DH,執(zhí)行指令
MULAB后,乘積是1C56H,所以在B中放的是1CH,而A中放的則是56H。
除法指令
DIVAB
此指令的功能是將A中的8位無符號數(shù)除了B中的8位無符號數(shù)(A/B)。除法一般會出現(xiàn)小數(shù),但計算機(jī)中可沒法直接表達(dá)小數(shù),它用的是我們小學(xué)生還沒接觸到小數(shù)時用的商和余數(shù)的概念,如13/5,其商是2,余數(shù)是3。除了以后,商放在A中,余數(shù)放在B中。CY和OV都是0。如果在做除法前B中的值是00H,也就是除數(shù)為0,那么0V=1。
加1指令
INCA
INCRn
INCdirect
INC@Ri
INCDPTR
用途很簡單,就是將后面目標(biāo)中的值加1。例:(A)=12H,(R0)=33H,(21H)=32H,(34H)=22H,DPTR=1234H。執(zhí)行下面的指令:
INCA(A)=13H
INCR2(R0)=34H
INC21H(21H)=33H
INC@R0(34H)=23H
INCDPTR(DPTR)=1235H
后結(jié)果如上所示。
說明:從結(jié)果上看INCA和ADDA,#1差不多,但I(xiàn)NCA是單字節(jié),單周期指令,而ADD#1則是雙字節(jié),雙周期指令,而且INCA不會影響PSW位,如(A)=0FFH,INCA后(A)=00H,而CY依然保持不變。如果是ADDA,#1,則(A)=00H,而CY一定是1。因此加1指令并不適合做加法,事實上它主要是用來做計數(shù)、地址增加等用途。另外,加法類指令都是以A為核心的,其中一個數(shù)必須放在A中,而運算結(jié)果也必須放在A中,而加1類指令的對象則廣泛得多,可以是寄存器、內(nèi)存地址、間址尋址的地址等等。
減1指令
減1指令
DECA
DECRN
DECdirect
DEC@Ri
與加1指令類似,就不多說了。
綜合練習(xí):
MOVA,#12H
MOVR0,#24H
MOV21H,#56H
ADDA,#12H
MOVDPTR,#4316H
ADDA,DPH
ADDA,R0
CLRC
SUBBA,DPL
SUBBA,#25H
INCA
SETBC
ADDCA,21H
INCR0
SUBBA,R0
MOV24H,#16H
CLRC
ADDA,@R0
先寫出每步運行結(jié)果,然后將以上題目建入,并在軟件仿真中運行,觀察寄存器及有關(guān)單元的內(nèi)容的變化,是否與自已的預(yù)想結(jié)果相同。
上一篇:8051單片機(jī)教程第九課:數(shù)據(jù)傳遞指令
下一篇:8051單片機(jī)教程第十二課:邏輯運算類指令
推薦閱讀
史海拾趣
隨著數(shù)據(jù)中心的能耗問題日益突出,GreenTech敏銳地捕捉到了這一市場機(jī)遇。公司研發(fā)了一套綠色數(shù)據(jù)中心解決方案,包括高效能服務(wù)器、智能溫控系統(tǒng)和可再生能源供電系統(tǒng)等。這些創(chuàng)新技術(shù)有效降低了數(shù)據(jù)中心的能耗和碳排放,為云計算和大數(shù)據(jù)產(chǎn)業(yè)的綠色發(fā)展提供了有力支持。GreenTech的解決方案得到了多家互聯(lián)網(wǎng)巨頭的認(rèn)可,并成功應(yīng)用于多個大型數(shù)據(jù)中心項目。
迪一電子公司成立于2006年,最初只是一家規(guī)模較小的半導(dǎo)體電子元器件制造企業(yè)。在創(chuàng)業(yè)初期,公司面臨著資金緊張、技術(shù)落后和市場競爭激烈等多重困難。然而,創(chuàng)始人李政堅信半導(dǎo)體行業(yè)的發(fā)展?jié)摿Γ瑤ьI(lǐng)團(tuán)隊不斷研發(fā)新產(chǎn)品,提高產(chǎn)品質(zhì)量,逐漸在市場上贏得了一席之地。
在產(chǎn)品多元化的基礎(chǔ)上,義隆電子開始積極拓展國際市場。公司以臺灣新竹科學(xué)園區(qū)為營運總部,在亞洲、美洲等多個國家和地區(qū)設(shè)立了分支機(jī)構(gòu)和設(shè)計中心。通過與全球合作伙伴的緊密合作,義隆電子的產(chǎn)品逐漸進(jìn)入歐洲、亞洲和美洲等市場,實現(xiàn)了全球布局。
自成立以來,世紀(jì)金光始終注重科研實力的積累。公司積極承擔(dān)國家科研任務(wù),已轉(zhuǎn)接和直接承擔(dān)國家科研任務(wù)80多項。在這些科研項目中,世紀(jì)金光取得了豐碩的成果,其中12項成果處于國內(nèi)同類技術(shù)領(lǐng)先水平,5項成果達(dá)到國際先進(jìn)水平。這些成果的取得不僅提升了公司的技術(shù)水平,也為公司在半導(dǎo)體領(lǐng)域的競爭提供了有力支撐。
隨著全球?qū)稍偕茉吹娜找骊P(guān)注,風(fēng)電行業(yè)得到了迅速發(fā)展。Altech公司緊跟時代步伐,投入大量資源研發(fā)鋁合金風(fēng)電線導(dǎo)體。這種新型導(dǎo)體材料不僅具有優(yōu)異的導(dǎo)電性能,還具備出色的耐候性和抗腐蝕性,極大地提高了風(fēng)電設(shè)備的運行效率和穩(wěn)定性。
著名通信企業(yè)招聘嵌入式軟件開發(fā)(高級)工程師 有意者請將簡歷發(fā)送至:chengqi2010@163.com 崗位描述: 一.崗位名稱:軟件設(shè)計高級工程師 工作地:上海 主要職責(zé): 1.負(fù)責(zé)終端產(chǎn)品軟件架構(gòu)設(shè)計、總體方案設(shè)計 2.指導(dǎo)產(chǎn)品的軟件設(shè)計開發(fā)過程 ...… 查看全部問答∨ |
|
以前沒做過嵌入式開發(fā),現(xiàn)兩家公司招聘被錄用,一家做手機(jī),一家做電視? 哪家更好些? ?以前沒做過嵌入式開發(fā),現(xiàn)兩家公司招聘被錄用,一家做手機(jī),一家做電視? 哪家更好些? 因為兩家公司實力相當(dāng),我沒有辦法比較。 以前做研發(fā)只用vc開發(fā)過項目,對嵌入式并不了解。 所以,想問問各位: 做軟件, 開發(fā)手機(jī)和開發(fā)電視 ,哪 ...… 查看全部問答∨ |
SES5VD923-2B資料 TVS管的選擇 替換型號;PVS05A-0402 SES5VD923-2B WE05D9-B Feature 100 Watts peak pulse power (tp = 8/20μs) Transient protection for data lines to IEC 61000-4-2 (ESD) ±25kV (air), ...… 查看全部問答∨ |
下面是我編寫關(guān)于93C46的讀寫代碼,P0引腳連接的是8個LED,目的是通過讀寫93C46實現(xiàn)LED閃爍的效果。 現(xiàn)在程序運行時,DO引腳始終是高電平,LED常亮,檢查好幾遍時序設(shè)置,也沒有發(fā)現(xiàn)問題,請各位高手幫我分析一下到底問題出現(xiàn)在哪了,謝謝! #inc ...… 查看全部問答∨ |
請問32KB+256B Flash Memory,這個256B干嘛用的? MSP430 Datasheet中一般出現(xiàn)這句話:32KB + 256B Flash Memory 512B RAM 問1,這個256B是什么意思? 問2,假如我的程序大小為12KB,那么剩下的20KB Flash Memory是否可以當(dāng)做EEPROM來使用?… 查看全部問答∨ |
德州儀器:Sitara AM335x EVM開啟您的開發(fā)之路 $(\'swf_M9P\').innerHTML=AC_FL_RunContent(\'width\', \'550\', \'height\', \'400\', \'allowNetworking\', \'internal\', \'allowScriptAccess\', \'never\', \'src\', encodeURI(\'http://player.youku.com/player.php/sid/XMzIxMTQ5MzYw/v.sw ...… 查看全部問答∨ |
51單片機(jī)實現(xiàn)紅外編碼檢測 通過51 單片機(jī)及外圍電路實現(xiàn)對接受信號的處理(通過外部中斷和計數(shù)器)獲得信號的01編碼,設(shè)備顯示。 有關(guān)紅外傳感的一些資料 紅外傳感基礎(chǔ)知識:v 紅外發(fā)光管:紅外發(fā)光二極管通常使用砷化鎵(GaAs)、砷鋁化鎵(GaAlA ...… 查看全部問答∨ |
關(guān)于beaglebone 的LCD擴(kuò)展! 給beaglebone擴(kuò)展的群創(chuàng)LCD,是AT070TN92,電路設(shè)計是這樣的: 但是會出現(xiàn)比較嚴(yán)重的色差現(xiàn)象: 上圖的顏色過渡明顯有問題,換成整圖的話,這種問題會更明顯!! 我嘗試去掉此電平轉(zhuǎn)換芯片,顯示效果倒是正常了: 但是又有了新的 ...… 查看全部問答∨ |
MSP430程序庫<四>printf和scanf函數(shù)移植 [indent] printf 和scanf函數(shù)是C語言中最常用的輸入出函數(shù),從學(xué)習(xí)C語言開始,就開始使用這兩個函數(shù),然而當(dāng)寫用C語言寫單片機(jī)程序時卻不能使用這兩個函數(shù),總覺得單片機(jī)的C語言和一般的C語言差別很大,寫起來不大方便;其實,單片機(jī)的C語言也是 ...… 查看全部問答∨ |
設(shè)計資源 培訓(xùn) 開發(fā)板 精華推薦
- 【ESP32】通過串口控制直流電機(jī)
- ESP32 spi 驅(qū)動使用 dummy 方式支持設(shè)備驅(qū)動
- ESP32系列CPU支持差分升級
- ESP32驅(qū)動MFRC522 RFID模塊讀寫IC卡數(shù)據(jù)
- 技術(shù)干貨 | 汽車功能安全:ISO 26262-2018 的框架探秘
- Nullmax如何打造成熟可靠且性能出眾的AEB系統(tǒng)
- 多毫米波雷達(dá)的實車連續(xù)測量應(yīng)用案例
- 智能車電磁組——基本控制篇
- L3+智能座艙時代,主機(jī)廠三大核心需求揭秘!
- 方案分享 | ADAS時空融合數(shù)據(jù)采集方案
- 免費下載——Maxim 面向工業(yè)應(yīng)用的參考設(shè)計
- 有獎直播:Littelfuse電動車充電樁及車載充電器保護(hù)設(shè)計方案
- 調(diào)查:量身定制你的 M0 單片機(jī)!參與問卷有好禮!
- 有獎看視頻|2022臺北國際電腦展——美光主題演講精選
- Wi-Fi智能戰(zhàn)隊征集令,Open1081免費試用進(jìn)行中...
- 【傳感器,開玩啦】第一關(guān):免費申請評測運動和環(huán)境傳感器開發(fā)板
- 沁恒CH579M-R1開發(fā)板免費測評,豐富外設(shè)等你體驗
- 快來應(yīng)援吧!投票選出你最愛的TI培訓(xùn)課程
- 【有獎活動】與春天有個約會--曬照片
- 【EEWORLD第二十九屆】2011年08月社區(qū)明星人物揭曉!
- 易評機(jī):這一次WWDC18雖簡單暴力但更純粹
- iOS 12正式宣布!老設(shè)備最高提速70%
- 諾基亞“鳳凰”新機(jī):搭載高通驍龍710芯片
- stm32的學(xué)習(xí)之存儲器和總線架構(gòu)
- STM32F10XXX總線架構(gòu)和存儲器組織
- Regulus Cyber與哈曼聯(lián)合開發(fā)安全解決方案 保護(hù)車輛GPS免受攻擊
- 南加州大學(xué)研發(fā)出更好的氧化還原液流電池
- 自動駕駛技術(shù)的三種定位技術(shù)解決方法
- 在ABS和DYC兩電路中實現(xiàn)車輛穩(wěn)定性控制系統(tǒng)的設(shè)計
- 阿科瑪新型電解質(zhì)添加劑LiTDI 可提升電池壽命和充電速度