版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第二章C51
程序設(shè)計(jì)基礎(chǔ)2.3
C51的基本運(yùn)算單片機(jī)原理與接口技術(shù)C51
語(yǔ)言中,運(yùn)算符主要分為三大類(lèi):●算術(shù)運(yùn)算符●關(guān)系運(yùn)算符與邏輯運(yùn)算符●按位運(yùn)算符此外,還有一些用于完成特殊任務(wù)的運(yùn)算符。如“,”、“?”運(yùn)算符、地址操作運(yùn)算符、聯(lián)合操作運(yùn)算符、"sizeof"運(yùn)算符、類(lèi)型轉(zhuǎn)換
運(yùn)算符等。1.賦值運(yùn)算符:
=2.算術(shù)運(yùn)算符:十、
一
、*、1、%,++,
--3.關(guān)系運(yùn)算符:<
、>
、<=
、>=
、==
、!=
4.邏輯運(yùn)算符:&&(與);Ⅲ(或);!(非)。優(yōu)先級(jí)順序(由高到低):
邏輯非→算術(shù)運(yùn)算符→關(guān)系運(yùn)算符→邏輯與→邏輯或→賦值運(yùn)算。5.位運(yùn)算符按位與(&)、按位或(1)、按位異或(^)、取反(~)、左移(<<)和
右移(>>)。優(yōu)先級(jí)順序(由高到低)
:
按位取反(~)→
左移(<<)和右
移(
>
>
)
→按
位
與(
&
)
→
按位異或(^)
→
按位或(1)。6.復(fù)合賦值運(yùn)算符變量雙目運(yùn)算符=表達(dá)式等效于:變量=變量
運(yùn)算符表達(dá)式a+=b;//a=a+b十
二
、
-
=
、
*
=
、
/
=
、
%
=
、
<
<
=
、
>
>
=
、
&
=
、
^
=
、
=
。a>>=7;//a=a>>7取地址(&)運(yùn)算的含義是將目標(biāo)變量的地址賦給等號(hào)(=)左邊的指針變量。取內(nèi)容(*)運(yùn)算的含義是將指針變量所指向的目標(biāo)變量的值賦給等號(hào)(=)左邊的變量;chara=5,b,*txp,*p;charxdatatxbuffer[3]={1,2,3};
voidmain(void){txp=txbuffer;//txp=&txbuffer
b=*txp;//b=1p=&a;//把變量a的地址賦給p7.指針和地址運(yùn)算符存放變量地址的變量稱(chēng)為指針變量。取地址(&)和取內(nèi)容(*)。指針變量=&目標(biāo)變量變量=*指針變量在C51中訪問(wèn)外部I/O端口的方法:方法1:使用自定義指針。
片
外I/O端口與片外存儲(chǔ)器統(tǒng)一編址,可以定義xdata類(lèi)型的指針訪問(wèn)外部I/O端口。charxdata
*ptr;//定義指向外部存儲(chǔ)區(qū)(片外I/O端口)的指針例如,某單片機(jī)應(yīng)用系統(tǒng)中,使用8255芯片擴(kuò)展I/O端口,8255的命令口
地址為7FF3H,PA
口地址為7FFOH,分析對(duì)8255芯片的訪問(wèn)?!魧?xiě)端口程序:char
xdata
*ptr
;
//
定義指向外部存儲(chǔ)區(qū)(片
外I/0端口)的
指針ptr=0x7ff3
;//
使指針指向8255的控制口(命令口)地址7FF3H*ptr
=0x81;//
輸出命令字81H到命令口寄存器以上C程序相當(dāng)于下面的匯編語(yǔ)言程序:MOVDPTR,
#7FF3HMOV
A
,
#81HMOVX
@DPTR
,
A◆讀端口程序:char
xdata
*ptr;
//定義指針chari;ptr
=0x7FFO;//使指針指向8255的PA口地址7FFOHi=*ptr;/
讀PA
端口內(nèi)容到變量i以上C
程序相當(dāng)于下面的匯編語(yǔ)言程序:MOV
DPTR,#7FFOHMOVX
A,@DPTR方法2:使用C51
預(yù)定義指針。在C51的absacc.h頭文件做了如下定義,可利用其方便地訪問(wèn)外部I/O端口。#define
CBYTE
((unsigned
char
volatile
code*)0)#define
DBYTE((unsigned
charvolatile
data*
)0)#define
PBYTE
((unsigned
charvolatile
pdata*
)0)#define
XBYTE
((unsignedcharvolatilexdata*)0)volatile修飾了的變量隨程序的執(zhí)行其值會(huì)被改變,“易變”#include<absacc.h>#define
PORTA
XBYTE[0x7ff0]//PORTA為I/O端口名稱(chēng),[]內(nèi)的7ffOH為PORTA的地址yoidmain(void)char
a;PORTA
=0x81;//*輸出81H到端口7ffOHa=
PORTA
;
//讀端口7ffOH到變量a地址或*(XBYTE+0x7ff0)相當(dāng)于定義X
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年大學(xué)高速鐵路客運(yùn)組織與服務(wù)(客運(yùn)服務(wù))技能測(cè)試題
- 2025年高職藥物制劑技術(shù)(藥物制劑工藝)試題及答案
- 2025年中職新能源汽車(chē)檢測(cè)與維修技術(shù)(充電系統(tǒng)故障排除)試題及答案
- 2025年大學(xué)哲學(xué)(語(yǔ)言哲學(xué)專(zhuān)題)試題及答案
- 2025年中職康復(fù)技術(shù)(康復(fù)評(píng)估方法)試題及答案
- 2025年大學(xué)三年級(jí)(土木工程)施工技術(shù)階段測(cè)試題及答案
- 2025年中職(旅游服務(wù)與管理)酒店服務(wù)試題
- 2025年高職(大數(shù)據(jù)技術(shù))數(shù)據(jù)清洗試題及答案
- 2025年高職烹飪(飲食文化概論)試題及答案
- 2025年高職中藥資源學(xué)(資源利用)期末試題
- DB375026-2022《居住建筑節(jié)能設(shè)計(jì)標(biāo)準(zhǔn)》
- 傳感器與測(cè)試技術(shù)課程設(shè)計(jì)
- 社會(huì)實(shí)踐-形考任務(wù)四-國(guó)開(kāi)(CQ)-參考資料
- 2024年貴州貴安發(fā)展集團(tuán)有限公司招聘筆試參考題庫(kù)附帶答案詳解
- GB/T 43824-2024村鎮(zhèn)供水工程技術(shù)規(guī)范
- DB3402-T 57-2023 醫(yī)院物業(yè)服務(wù)規(guī)范
- 腰椎間盤(pán)突出患者術(shù)后護(hù)理課件
- 醫(yī)院護(hù)理培訓(xùn)課件:《高壓氧臨床的適應(yīng)癥》
- 固定修復(fù)基礎(chǔ)理論-固位原理(口腔固定修復(fù)工藝課件)
- 合同能源管理培訓(xùn)講義
- 剪映電腦版使用說(shuō)明教程
評(píng)論
0/150
提交評(píng)論