亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

蟲(chóng)蟲(chóng)首頁(yè)| 資源下載| 資源專(zhuān)輯| 精品軟件
登錄| 注冊(cè)

異常檢測(cè)(cè)

  • 單片機(jī)C語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)指導(dǎo)書(shū)

    單片機(jī)體積小,重量輕,具有很強(qiáng)的靈活性,而且價(jià)格不高,越來(lái)越得到廣泛的應(yīng)用。而C語(yǔ)言是一種編譯型設(shè)計(jì)語(yǔ)言。它兼顧了多種高級(jí)語(yǔ)言的特點(diǎn),并具備匯編語(yǔ)言的功能。用C語(yǔ)言來(lái)編寫(xiě)目標(biāo)系統(tǒng)軟件,會(huì)大大縮短開(kāi)發(fā)周期,且明顯的增加軟件的可讀性,便于改進(jìn)和擴(kuò)充,以研制出規(guī)模更大、性能更完備的系統(tǒng)。用C語(yǔ)言進(jìn)行8051單片機(jī)程序設(shè)計(jì)是單片機(jī)開(kāi)發(fā)與應(yīng)用的必然趨勢(shì)。單片機(jī)的程序設(shè)計(jì)應(yīng)該以C語(yǔ)言為主,以匯編語(yǔ)言為輔。而且采用C語(yǔ)言也不必對(duì)單片機(jī)和硬件接口的結(jié)構(gòu)有很深入的了解,編譯器可以自動(dòng)完成變量的存儲(chǔ)單元的分配,編程者就可以專(zhuān)注于應(yīng)用軟件部分的設(shè)計(jì),大大加快軟件的開(kāi)發(fā)速度。采用C語(yǔ)言可以很容易地進(jìn)行單片機(jī)的程序移植工作,有利于產(chǎn)品中單片機(jī)的重新選型。為此,特開(kāi)設(shè)了單片機(jī)的C語(yǔ)言應(yīng)用程序設(shè)計(jì)這門(mén)選修課。

    標(biāo)簽: 單片機(jī) C語(yǔ)言程序 設(shè)計(jì)實(shí)驗(yàn) 指導(dǎo)書(shū)

    上傳時(shí)間: 2013-10-19

    上傳用戶(hù):851197153

  • 單片機(jī)C語(yǔ)言中指針的應(yīng)用

    摘要:本文主要結(jié)合51單片機(jī)系統(tǒng)的硬件資源特點(diǎn),從指針結(jié)構(gòu)聲明,對(duì)于不同存儲(chǔ)區(qū)(片內(nèi)、片外數(shù)據(jù)存儲(chǔ)區(qū)和程序存儲(chǔ)區(qū))的指針尋址的實(shí)現(xiàn)等方面闡述了單片機(jī)C語(yǔ)言才勻針的應(yīng)用。關(guān)鍵詞:?jiǎn)纹瑱C(jī)C語(yǔ)言 指針

    標(biāo)簽: 單片機(jī) C語(yǔ)言 指針

    上傳時(shí)間: 2013-10-09

    上傳用戶(hù):libenshu01

  • 51單片機(jī)Keil C語(yǔ)言入門(mén)教程

    學(xué)習(xí)單片機(jī)實(shí)在不是件易事,一來(lái)要購(gòu)買(mǎi)高價(jià)格的編程器,仿真器,二來(lái)要學(xué)習(xí)編程語(yǔ)言,還有眾多種類(lèi)的單片機(jī)選擇真是件讓人頭痛的事。在眾多單片機(jī)中51 架構(gòu)的芯片風(fēng)行很久,學(xué)習(xí)資料也相對(duì)很多,是初學(xué)的較好的選擇之一。51 的編程語(yǔ)言常用的有二種,一種是匯編語(yǔ)言,一種是C 語(yǔ)言。匯編語(yǔ)言的機(jī)器代碼生成效率很高但可讀性卻并不強(qiáng),復(fù)雜一點(diǎn)的程序就更是難讀懂,而C 語(yǔ)言在大多數(shù)情況下其機(jī)器代碼生成效率和匯編語(yǔ)言相當(dāng),但可讀性和可移植性卻遠(yuǎn)遠(yuǎn)超過(guò)匯編語(yǔ)言,而且C 語(yǔ)言還可以嵌入?yún)R編來(lái)解決高時(shí)效性的代碼編寫(xiě)問(wèn)題。對(duì)于開(kāi)發(fā)周期來(lái)說(shuō),中大型的軟件編寫(xiě)用C 語(yǔ)言的開(kāi)發(fā)周期通常要小于匯編語(yǔ)言很多。綜合以上C 語(yǔ)言的優(yōu)點(diǎn),我在學(xué)習(xí)時(shí)選擇了C 語(yǔ)言。以后的教程也只是我在學(xué)習(xí)過(guò)程中的一些學(xué)習(xí)筆記和隨筆,在這里加以整理和修改,希望和大家一起分享,一起交流,一起學(xué)習(xí),一起進(jìn)步。

    標(biāo)簽: Keil 51單片機(jī) C語(yǔ)言 入門(mén)教程

    上傳時(shí)間: 2013-10-07

    上傳用戶(hù):pompey

  • AVR 單片機(jī)和C語(yǔ)言的集成開(kāi)發(fā)環(huán)境

    AVR 單片機(jī)和C語(yǔ)言的集成開(kāi)發(fā)環(huán)境 ICCAVR編譯器簡(jiǎn)介 ICCAVR是一個(gè)綜合了編輯器和工程管理器的集成開(kāi)發(fā)環(huán)境(IDE),是一個(gè)純32位的程序,可在Windows 95/98/ME/NT/2000/XP下運(yùn)行。Ø 源文件全部被組織在工程之中,文件的編輯和工程的構(gòu)筑也在IDE的環(huán)境中完成。編譯錯(cuò)誤在狀態(tài)窗口中顯示,用鼠標(biāo)單擊編譯錯(cuò)誤時(shí),光標(biāo)會(huì)自動(dòng)跳轉(zhuǎn)到編輯窗口中引起錯(cuò)誤的那一行。同時(shí)這個(gè)工程管理器還能直接產(chǎn)生INTEL HEX格式的燒錄文件和用于AVR Studio調(diào)試的COFF格式的文件。Ø ICCAVR是一個(gè)32位的程序,支持長(zhǎng)文件名。Ø ICCAVR提供了全部的庫(kù)源代碼及一些簡(jiǎn)單的應(yīng)用實(shí)例供初學(xué)者參考,特別是提供庫(kù)源代碼,對(duì)于用戶(hù)理解庫(kù)函數(shù)的參數(shù)及返回值等是非常有益的,并且用戶(hù)能夠根據(jù)庫(kù)源代碼對(duì)ICCAVR提供的庫(kù)函數(shù)進(jìn)行剪裁和擴(kuò)充

    標(biāo)簽: AVR 單片機(jī) C語(yǔ)言 集成開(kāi)發(fā)環(huán)境

    上傳時(shí)間: 2013-10-30

    上傳用戶(hù):pkkkkp

  • 51單片機(jī)C語(yǔ)言快速上手

    51單片機(jī)C語(yǔ)言快速上手51單片機(jī)是對(duì)目前所有兼容Intel 8031指令系統(tǒng)的單片機(jī)的統(tǒng)稱(chēng)。該系列單片機(jī)的始祖是Intel的8031單片機(jī),后來(lái)隨著Flash rom技術(shù)的發(fā)展,8031單片機(jī)取得了長(zhǎng)足的進(jìn)展,成為目前應(yīng)用最廣泛的8位單片機(jī)之一,其代表型號(hào)是ATMEL公司的AT89系列,它廣泛應(yīng)用于工業(yè)測(cè)控系統(tǒng)之中。目前很多公司都有51系列的兼容機(jī)型推出,在目前乃至今后很長(zhǎng)的一段時(shí)間內(nèi)將占有大量市場(chǎng)  作為一個(gè)初學(xué)者,如何單片機(jī)入門(mén)?  知識(shí)上,其實(shí)不需要多少東西,會(huì)簡(jiǎn)單的C語(yǔ)言,知道51單片機(jī)的基本結(jié)構(gòu)就可以了。一般的大學(xué)畢業(yè)生都可以了,自學(xué)過(guò)這2門(mén)課程的高中生也夠條件。設(shè)備上,一般是建議購(gòu)買(mǎi)一個(gè)仿真器,這樣才可以進(jìn)行實(shí)際的,全面的學(xué)習(xí)。日后在工作上,仿真器也大有用處。還有,一般光有仿真器是不行,還得有一個(gè)實(shí)際的電路,即學(xué)習(xí)板。

    標(biāo)簽: 51單片機(jī)C語(yǔ)言

    上傳時(shí)間: 2013-11-23

    上傳用戶(hù):songkun

  • 51單片機(jī)C語(yǔ)言提升教程

    51單片機(jī)C語(yǔ)言提升教程 51 單片機(jī)C 語(yǔ)言學(xué)習(xí)雜記學(xué)習(xí)單片機(jī)實(shí)在不是件易事,一來(lái)要購(gòu)買(mǎi)高價(jià)格的編程器,仿真器,二來(lái)要學(xué)習(xí)編程語(yǔ)言,還有眾多種類(lèi)的單片機(jī)選擇真是件讓人頭痛的事。在眾多單片機(jī)中51 架構(gòu)的芯片風(fēng)行很久,學(xué)習(xí)資料也相對(duì)很多,是初學(xué)的較好的選擇之一。51 的編程語(yǔ)言常用的有二種,一種是匯編語(yǔ)言,一種是C 語(yǔ)言。匯編語(yǔ)言的機(jī)器代碼生成效率很高但可讀性卻并不強(qiáng),復(fù)雜一點(diǎn)的程序就更是難讀懂,而C 語(yǔ)言在大多數(shù)情況下其機(jī)器代碼生成效率和匯編語(yǔ)言相當(dāng),但可讀性和可移植性卻遠(yuǎn)遠(yuǎn)超過(guò)匯編語(yǔ)言,而且C 語(yǔ)言還可以嵌入?yún)R編來(lái)解決高時(shí)效性的代碼編寫(xiě)問(wèn)題。對(duì)于開(kāi)發(fā)周期來(lái)說(shuō),中大型的軟件編寫(xiě)用C 語(yǔ)言的開(kāi)發(fā)周期通常要小于匯編語(yǔ)言很多。綜合以上C 語(yǔ)言的優(yōu)點(diǎn),我在學(xué)習(xí)時(shí)選擇了C 語(yǔ)言。以后的教程也只是我在學(xué)習(xí)過(guò)程中的一些學(xué)習(xí)筆記和隨筆,在這里加以整理和修改,希望和大家一起分享,一起交流,一起學(xué)習(xí),一起進(jìn)步。

    標(biāo)簽: 51單片機(jī)C語(yǔ)言 教程

    上傳時(shí)間: 2013-10-14

    上傳用戶(hù):aa7821634

  • 單片機(jī)指令系統(tǒng)原理

    單片機(jī)指令系統(tǒng)原理 51單片機(jī)的尋址方式 學(xué)習(xí)匯編程序設(shè)計(jì),要先了解CPU的各種尋址法,才能有效的掌握各個(gè)命令的用途,尋址法是命令運(yùn)算碼找操作數(shù)的方法。在我們學(xué)習(xí)的8051單片機(jī)中,有6種尋址方法,下面我們將逐一進(jìn)行分析。 立即尋址 在這種尋址方式中,指令多是雙字節(jié)的,一般第一個(gè)字節(jié)是操作碼,第二個(gè)字節(jié)是操作數(shù)。該操作數(shù)直接參與操作,所以又稱(chēng)立即數(shù),有“#”號(hào)表示。立即數(shù)就是存放在程序存儲(chǔ)器中的常數(shù),換句話說(shuō)就是操作數(shù)(立即數(shù))是包含在指令字節(jié)中的。 例如:MOV  A,#3AH這條指令的指令代碼為74H、3AH,是雙字節(jié)指令,這條指令的功能是把立即數(shù)3AH送入累加器A中。MOV  DPTR,#8200H在前面學(xué)單片機(jī)的專(zhuān)用寄存器時(shí),我們已學(xué)過(guò),DPTR是一個(gè)16位的寄存器,它由DPH及DPL兩個(gè)8位的寄存器組成。這條指令的意思就是把立即數(shù)的高8位(即82H)送入DPH寄存器,把立即數(shù)的低8位(即00H)送入DPL寄存器。這里也特別說(shuō)明一下:在80C51單片機(jī)的指令系統(tǒng)中,僅有一條指令的操作數(shù)是16位的立即數(shù),其功能是向地址指針DPTR傳送16位的地址,即把立即數(shù)的高8位送入DPH,低8位送入DPL。 直接尋址 直接尋址方式是指在指令中操作數(shù)直接以單元地址的形式給出,也就是在這種尋址方式中,操作數(shù)項(xiàng)給出的是參加運(yùn)算的操作數(shù)的地址,而不是操作數(shù)。例如:MOV  A,30H  這條指令中操作數(shù)就在30H單元中,也就是30H是操作數(shù)的地址,并非操作數(shù)。 在80C51單片機(jī)中,直接地址只能用來(lái)表示特殊功能寄存器、內(nèi)部數(shù)據(jù)存儲(chǔ)器以及位地址空間,具體的說(shuō)就是:1、內(nèi)部數(shù)據(jù)存儲(chǔ)器RAM低128單元。在指令中是以直接單元地址形式給出。我們知道低128單元的地址是00H-7FH。在指令中直接以單元地址形式給出這句話的意思就是這0-127共128位的任何一位,例如0位是以00H這個(gè)單元地址形式給出、1位就是以01H單元地址給出、127位就是以7FH形式給出。2、位尋址區(qū)。20H-2FH地址單元。3、特殊功能寄存器。專(zhuān)用寄存器除以單元地址形式給出外,還可以以寄存器符號(hào)形式給出。例如下面我們分析的一條指令 MOV  IE,#85H 前面的學(xué)習(xí)我們已知道,中斷允許寄存器IE的地址是80H,那么也就是這條指令可以以MOV  IE,#85H 的形式表述,也可以MOV  80H,#85H的形式表述。 關(guān)于數(shù)據(jù)存儲(chǔ)器RAM的內(nèi)部情況,請(qǐng)查看我們課程的第十二課。 直接尋址是唯一能訪問(wèn)特殊功能寄存器的尋址方式! 大家來(lái)分析下面幾條指令:MOV  65H,A       ;將A的內(nèi)容送入內(nèi)部RAM的65H單元地址中MOV  A,direct    ;將直接地址單元的內(nèi)容送入A中MOV  direct,direct;將直接地址單元的內(nèi)容送直接地址單元MOV  IE,#85H      ;將立即數(shù)85H送入中斷允許寄存器IE 前面我們已學(xué)過(guò),數(shù)據(jù)前面加了“#”的,表示后面的數(shù)是立即數(shù)(如#85H,就表示85H就是一個(gè)立即數(shù)),數(shù)據(jù)前面沒(méi)有加“#”號(hào)的,就表示后面的是一個(gè)地址地址(如,MOV 65H,A這條指令的65H就是一個(gè)單元地址)。 寄存器尋址 寄存器尋址的尋址范圍是:1、4個(gè)工作寄存器組共有32個(gè)通用寄存器,但在指令中只能使用當(dāng)前寄存器組(工作寄存器組的選擇在前面專(zhuān)用寄存器的學(xué)習(xí)中,我們已知道,是由程序狀態(tài)字PSW中的RS1和RS0來(lái)確定的),因此在使用前常需要通過(guò)對(duì)PSW中的RS1、RS0位的狀態(tài)設(shè)置,來(lái)進(jìn)行對(duì)當(dāng)前工作寄存器組的選擇。2、部份專(zhuān)用寄存器。例如,累加器A、通用寄存器B、地址寄存器DPTR和進(jìn)位位CY。 寄存器尋址方式是指操作數(shù)在寄存器中,因此指定了寄存器名稱(chēng)就能得到操作數(shù)。例如:MOV A,R0這條指令的意思是把寄存器R0的內(nèi)容傳送到累加器A中,操作數(shù)就在R0中。INC R3這條指令的意思是把寄存器R3中的內(nèi)容加1 從前面的學(xué)習(xí)中我產(chǎn)應(yīng)可以理解到,其實(shí)寄存器尋址方式就是對(duì)由PSW程序狀態(tài)字確定的工作寄存器組的R0-R7進(jìn)行讀/寫(xiě)操作。 寄存器間接尋址 寄存間接尋址方式是指寄存器中存放的是操作數(shù)的地址,即操作數(shù)是通過(guò)寄存器間接得到的,因此稱(chēng)為寄存器間接尋址。 MCS-51單片機(jī)規(guī)定工作寄存器的R0、R1做為間接尋址寄存器。用于尋址內(nèi)部或外部數(shù)據(jù)存儲(chǔ)器的256個(gè)單元。為什么會(huì)是256個(gè)單元呢?我們知道,R0或者R1都是一個(gè)8位的寄存器,所以它的尋址空間就是2的八次方=256。例:MOV  R0,#30H  ;將值30H加載到R0中    MOV  A,@R0    ;把內(nèi)部RAM地址30H內(nèi)的值放到累加器A中    MOVX A,@R0    ;把外部RAM地址30H內(nèi)的值放到累加器A中 大家想想,如果用DPTR做為間址寄存器,那么它的尋址范圍是多少呢?DPTR是一個(gè)16位的寄存器,所以它的尋址范圍就是2的十六次方=65536=64K。因用DPTR做為間址寄存器的尋址空間是64K,所以訪問(wèn)片外數(shù)據(jù)存儲(chǔ)器時(shí),我們通常就用DPTR做為間址寄存器。例:MOV   DPTR,#1234H  ;將DPTR值設(shè)為1234H(16位)    MOVX  A,@DPTR      ;將外部RAM或I/O地址1234H內(nèi)的值放到累加器A中 在執(zhí)行PUSH(壓棧)和POP(出棧)指令時(shí),采用堆棧指針SP作寄存器間接尋址。例:PUSH  30H    ;把內(nèi)部RAM地址30H內(nèi)的值放到堆棧區(qū)中堆棧區(qū)是由SP寄存器指定的,如果執(zhí)行上面這條命令前,SP為60H,命令執(zhí)行后會(huì)把內(nèi)部RAM地址30H內(nèi)的值放到RAM的61H內(nèi)。 那么做為寄存器間接尋址用的寄存器主要有哪些呢?我們前面提到的有四個(gè),R0、R1、DPTR、SP 寄存器間接尋址范圍總結(jié):1、內(nèi)部RAM低128單元。對(duì)內(nèi)部RAM低128單元的間接尋址,應(yīng)使用R0或R1作間址寄存器,其通用形式為@Ri(i=0或1)。 2、外部RAM 64KB。對(duì)外部RAM64KB的間接尋址,應(yīng)使用@DPTR作間址尋址寄存器,其形式為:@DPTR。例如MOVX A,@DPTR;其功能是把DPTR指定的外部RAM的單元的內(nèi)容送入累加器A中。外部RAM的低256單元是一個(gè)特殊的尋址區(qū),除可以用DPTR作間址寄存器尋址外,還可以用R0或R1作間址寄存器尋址。例如MOVX  A,@R0;這條指令的意思是,把R0指定的外部RAM單元的內(nèi)容送入累加器A。 堆棧操作指令(PUSH和POP)也應(yīng)算作是寄存器間接尋址,即以堆棧指針SP作間址寄存器的間接尋址方式。 寄存器間接尋址方式不可以訪問(wèn)特殊功能寄存器!! 寄存器間接尋址也須以寄存器符號(hào)的形式表示,為了區(qū)別寄存器尋址我寄存器間接尋址的區(qū)別,在寄存器間接尋址方式式中,寄存器的名稱(chēng)前面加前綴標(biāo)志“@”。 基址寄存器加變址寄存器的變址尋址 這種尋址方式以程序計(jì)數(shù)器PC或DPTR為基址寄存器,累加器A為變址寄存器,變址尋址時(shí),把兩者的內(nèi)容相加,所得到的結(jié)果作為操作數(shù)的地址。這種方式常用于訪問(wèn)程序存儲(chǔ)器ROM中的數(shù)據(jù)表格,即查表操作。變址尋址只能讀出程序內(nèi)存入的值,而不能寫(xiě)入,也就是說(shuō)變址尋址這種方式只能對(duì)程序存儲(chǔ)器進(jìn)行尋址,或者說(shuō)它是專(zhuān)門(mén)針對(duì)程序存儲(chǔ)器的尋址方式。例:MOVC  A,@A+DPTR這條指令的功能是把DPTR和A的內(nèi)容相加,再把所得到的程序存儲(chǔ)器地址單元的內(nèi)容送A假若指令執(zhí)行前A=54H,DPTR=3F21H,則這條指令變址尋址形成的操作數(shù)地址就是54H+3F21H=3F75H。如果3F75H單元中的內(nèi)容是7FH,則執(zhí)行這條指令后,累加器A中的內(nèi)容就是7FH。 變址尋址的指令只有三條,分別如下:JMP    @A+DPTRMOVC   A,@A+DPTRMOVC   A,@A+PC 第一條指令JMP @A+DPTR這是一條無(wú)條件轉(zhuǎn)移指令,這條指令的意思就是DPTR加上累加器A的內(nèi)容做為一個(gè)16位的地址,執(zhí)行JMP這條指令是,程序就轉(zhuǎn)移到A+DPTR指定的地址去執(zhí)行。 第二、三條指令MOVC   A,@A+DPTR和MOVC   A,@A+PC指令這兩條指令的通常用于查表操作,功能完全一樣,但使用起來(lái)卻有一定的差別,現(xiàn)詳細(xì)說(shuō)明如下。我們知道,PC是程序指針,是十六位的。DPTR是一個(gè)16位的數(shù)據(jù)指針寄存器,按理,它們的尋址范圍都應(yīng)是64K。我們?cè)趯W(xué)習(xí)特殊功能寄存器時(shí)已知道,程序計(jì)數(shù)器PC是始終跟蹤著程序的執(zhí)行的。也就是說(shuō),PC的值是隨程序的執(zhí)行情況自動(dòng)改變的,我們不可以隨便的給PC賦值。而DPTR是一個(gè)數(shù)據(jù)指針,我們就可以給空上數(shù)據(jù)指針DPTR進(jìn)行賦值。我們?cè)倏粗噶頜OVC   A,@A+PC這條指令的意思是將PC的值與累加器A的值相加作為一個(gè)地址,而PC是固定的,累加器A是一個(gè)8位的寄存器,它的尋址范圍是256個(gè)地址單元。講到這里,大家應(yīng)可明白,MOVC   A,@A+PC這條指令的尋址范圍其實(shí)就是只能在當(dāng)前指令下256個(gè)地址單元。所在,這在我們實(shí)際應(yīng)用中,可能就會(huì)有一個(gè)問(wèn)題,如果我們需要查詢(xún)的數(shù)據(jù)表在256個(gè)地址單元之內(nèi),則可以用MOVC   A,@A+PC這條指令進(jìn)行查表操作,如果超過(guò)了256個(gè)單元,則不能用這條指令進(jìn)行查表操作。剛才我們已說(shuō)到,DPTR是一個(gè)數(shù)據(jù)指針,這個(gè)數(shù)據(jù)指針我們可以給它賦值操作的。通過(guò)賦值操作。我們可以使MOVC   A,@A+DPTR這條指令的尋址范圍達(dá)到64K。這就是這兩條指令在實(shí)際應(yīng)用當(dāng)中要注意的問(wèn)題。 變址尋址方式是MCS-51單片機(jī)所獨(dú)有的一種尋址方式。 位尋址 80C51單片機(jī)有位處理功能,可以對(duì)數(shù)據(jù)位進(jìn)行操作,因此就有相應(yīng)的位尋址方式。所謂位尋址,就是對(duì)內(nèi)部RAM或可位尋址的特殊功能寄存器SFR內(nèi)的某個(gè)位,直接加以置位為1或復(fù)位為0。 位尋址的范圍,也就是哪些部份可以進(jìn)行位尋址: 1、我們?cè)诘谑n學(xué)習(xí)51單片機(jī)的存儲(chǔ)器結(jié)構(gòu)時(shí),我們已知道在單片機(jī)的內(nèi)部數(shù)據(jù)存儲(chǔ)器RAM的低128單元中有一個(gè)區(qū)域叫位尋址區(qū)。它的單元地址是20H-2FH。共有16個(gè)單元,一個(gè)單元是8位,所以位尋址區(qū)共有128位。這128位都單獨(dú)有一個(gè)位地址,其位地址的名字就是00H-7FH。這里就有一個(gè)比較麻煩的問(wèn)題需要大家理解清楚了。我們?cè)谇懊娴膶W(xué)習(xí)中00H、01H。。。。7FH等等,所表示的都是一個(gè)字節(jié)(或者叫單元地址),而在這里,這些數(shù)據(jù)都變成了位地址。我們?cè)谥噶钪校蛘咴诔绦蛑腥绾蝸?lái)區(qū)分它是一個(gè)單元地址還是一個(gè)位地址呢?這個(gè)問(wèn)題,也就是我們現(xiàn)在正在研究的位尋址的一個(gè)重要問(wèn)題。其實(shí),區(qū)分這些數(shù)據(jù)是位地址還是單元地址,我們都有相應(yīng)的指令形式的。這個(gè)問(wèn)題我們?cè)诤竺娴闹噶钕到y(tǒng)學(xué)習(xí)中再加以論述。 2、對(duì)專(zhuān)用寄存器位尋址。這里要說(shuō)明一下,不是所有的專(zhuān)用寄存器都可以位尋址的。具體哪些專(zhuān)用寄存器可以哪些專(zhuān)用寄存器不可以,請(qǐng)大家回頭去看看我們前面關(guān)于專(zhuān)用寄存器的相關(guān)文章。一般來(lái)說(shuō),地址單元可以被8整除的專(zhuān)用寄存器,通常都可以進(jìn)行位尋址,當(dāng)然并不是全部,大家在應(yīng)用當(dāng)中應(yīng)引起注意。 專(zhuān)用寄存器的位尋址表示方法: 下面我們以程序狀態(tài)字PSW來(lái)進(jìn)行說(shuō)明 D7 D6 D5 D4 D3 D2 D1 D0 CY   AC  F0  RS1  RS0  OV    P  1、直接使用位地址表示:看上表,PSW的第五位地址是D5,所以可以表示為D5H   MOV  C,D5H 2、位名稱(chēng)表示:表示該位的名稱(chēng),例如PSW的位5是F0,所以可以用F0表示   MOV  C,F(xiàn)0 3、單元(字節(jié))地址加位表示:D0H單元位5,表示為DOH.5    MOV  C,D0H.5 4、專(zhuān)用寄存器符號(hào)加位表示:例如PSW.5    MOV C,PSW.5 這四種方法實(shí)現(xiàn)的功能都是相同的,只是表述的方式不同而已。 例題:   1. 說(shuō)明下列指令中源操作數(shù)采用的尋址方式。   MOV R5,R7 答案:寄存器尋址方式   MOV A,55H 直接尋址方式   MOV A,#55H 立即尋址方式   JMP @A+DPTR 變址尋址方式   MOV 30H,C 位尋址方式   MOV A,@R0 間接尋址方式   MOVX A,@R0 間接尋址方式 改錯(cuò)題   請(qǐng)判斷下列的MCS-51單片機(jī)指令的書(shū)寫(xiě)格式是否有錯(cuò),若有,請(qǐng)說(shuō)明錯(cuò)誤原因。   MOV R0,@R3 答案:間址寄存器不能使用R2~R7。   MOVC A,@R0+DPTR 變址尋址方式中的間址寄存器不可使用R0,只可使用A。   ADD R0,R1 運(yùn)算指令中目的操作數(shù)必須為累加器A,不可為R0。   MUL AR0 乘法指令中的乘數(shù)應(yīng)在B寄存器中,即乘法指令只可使用AB寄存器組合。

    標(biāo)簽: 單片機(jī)指令 系統(tǒng)原理

    上傳時(shí)間: 2013-11-11

    上傳用戶(hù):caozhizhi

  • HT45R35在觸控按鍵中的應(yīng)用(使用C語(yǔ)言)

    HT45R35在觸控按鍵中的應(yīng)用(使用C語(yǔ)言) HT45R35 Demo Board包含12個(gè)Touch Switch,這是一種電容式的非接觸式觸摸按鍵,它可以用來(lái)取代任何的機(jī)械式按鍵。由于C語(yǔ)言具有良好的可讀性、可移植性等優(yōu)點(diǎn),本文將介紹如何使用Holtek C語(yǔ)言來(lái)完成HT45R35 12Key Touch Switch Demo Board的軟件設(shè)計(jì).

    標(biāo)簽: 45R R35 HT 45

    上傳時(shí)間: 2013-10-10

    上傳用戶(hù):bjgaofei

  • 基于HT45R37V的低功耗C/R-F型八位OTP單片機(jī)

    基于HT45R37V的低功耗C/R-F型八位OTP單片機(jī) HT45R37V 是一款低功耗C/R-F 型具有8 位高性能精簡(jiǎn)指令集的單片機(jī),專(zhuān)門(mén)為需要VFD 功能的產(chǎn)品而設(shè)計(jì)。作為一款C/R-F 型的單片機(jī),它可以連接9 個(gè)外部電容型或電阻型傳感器,并把它們的電容值或電阻值轉(zhuǎn)換成相應(yīng)的頻率進(jìn)行處理。此外,單片機(jī)帶有內(nèi)部A/D 轉(zhuǎn)換器,能夠直接與模擬信號(hào)相連接,且它還集成了一個(gè)雙通道的脈沖寬度調(diào)節(jié)器,用于控制外部的馬達(dá)和LED 燈等。這款單片機(jī)是專(zhuān)門(mén)為VFD 產(chǎn)品應(yīng)用而設(shè)計(jì)的,它能直接驅(qū)動(dòng)VFD 面板。

    標(biāo)簽: 37V 45R R37 R-F

    上傳時(shí)間: 2013-10-16

    上傳用戶(hù):packlj

  • 基于HT45R37的低功耗C/R-F型八位OTP單片機(jī)

    基于HT45R37的低功耗C/R-F型八位OTP單片機(jī) HT45R37 是一款低功耗C/R-F 型具有8 位高性能精簡(jiǎn)指令集的單片機(jī)。作為一款C/R-F 型的單片機(jī),它可以連接16 個(gè)外部電容/電阻式傳感器,并把它們的電容值或電阻值轉(zhuǎn)換成相應(yīng)的頻率進(jìn)行處理。此外,單片機(jī)帶有內(nèi)部A/D 轉(zhuǎn)換器,能夠直接與模擬信號(hào)相連接,且它還集成了雙通道的脈沖寬度調(diào)節(jié)器,用于控制外部的馬達(dá)和LED 燈等。

    標(biāo)簽: 45R R37 R-F OTP

    上傳時(shí)間: 2013-11-23

    上傳用戶(hù):chenlong

主站蜘蛛池模板: 乐山市| 四子王旗| 龙陵县| 宁安市| 平邑县| 静海县| 宁都县| 涡阳县| 历史| 胶南市| 崇明县| 利津县| 满洲里市| 汉源县| 米易县| 永宁县| 昭觉县| 深水埗区| 巴林右旗| 伽师县| 海阳市| 唐山市| 阜南县| 临清市| 桂平市| 兴化市| 商丘市| 五原县| 林甸县| 沾化县| 洛川县| 准格尔旗| 蒙阴县| 札达县| 鸡西市| 旌德县| 宜黄县| 南郑县| 凭祥市| 五常市| 墨脱县|