導航:首頁 > 數據處理 > c51數據存儲類型寫在哪裡

c51數據存儲類型寫在哪裡

發布時間:2023-05-17 17:58:33

A. msc-51單片機的存儲器空間的劃分為哪五類

msc-51單舉橘片機的存儲區劃分五類,在用C51寫程正緩團序時,應聲明這五類存儲區類型:
1. 內部RAM數據存儲區,data類型,為默認的類型,可以省略。
2. 間址存儲區,idata 類型。
3. 位存儲區,bdata 類型。
4. 外部數據存儲區,xdata 類型。
5. 程序存儲區,code 類型。哪指

B. C51的變數定義中,為什麼比基本C語言多出個存儲類型

基本C語言程序是在電腦上運行的,而電腦上的內存只有一類。但是,單片機的內存分幾類,即數據存儲器的類型有分類,所以,聲明變數時要定義存儲類型,就是棚租為了鏈稿兆區分存放在什麼存儲器中。但是,通常默認的就是內部RAM存儲敬敗器,存儲類型可省。常量數據存放在ROM中,存儲類型code,而xdata類型需要擴展外部數據存儲器才行。

C. 在單片機c51中,變數的存儲類型

是指data idata xdata code吧
分別是存於片內低128字棗悄節,高128位元組,片外RAM中,團帶和程序存儲器中凳或渣

D. c51查表操作使用的數組存放在

ROM跟RAM 。
在全局定義的數組: eg: char a [3]={0}; 此時數組a的存儲位搭搭岩置為RAM。為什麼全局變數會存儲到RAM里?因為全局變 量在程序裡面隨時可能會被修改,比枝衡如自己調用,所以不能存儲到ROM里。
每個變數可以用表1中所列的存儲器類型明確地分配到指定的存儲空間。表1 C51存儲類型與80C51存儲空間的關系對內部數據存儲器的訪問比知御對外部數據存儲器的訪問快許多。

E. C51單片機存儲器類型有哪些

c51存儲器類型有bit
sbit
data
xdata
bdata
pdata
sfr
code等,可能不全面有遺漏
對應的物理存儲器是:
bit,即位數據:數據存儲器位定址區,即20h~2fh的范圍,共16個位元組,16*8=128個位,位地址00h~7fh,連續的。
sbit:特殊功能寄存器中的位數據:只有能夠被8整除的那些特殊功能寄存器中的各個位才能被稱為sbit,位地址80h~ffh,不連續的,間斷的。
data:數據區,對51為00h~7fh共128個位元組,對52為00h~ffh,共256個位元組,用mov定址,前128用直接定址或寄存器(r0~r7)定址,後128用r0、r1間接定址。
xdata:外部數據區,0000h~ffffh連續,用dptr間接定址(movx指令)
bdata:位定址去的位元組,20h~2fh
sfr:特殊功能寄存器(80h~ffh),直接定址
pdata:外部數據區,p2口保持數據,用r0r1間接定址(movx指令)
code:程序存儲器,用movc指令只讀

F. C51單片機應當將使用頻繁的變數置於片外還是片內存儲器,採用什麼存儲類型

C51單片機應當將使用頻繁的變數置於片外還是片內存儲器,採用什麼存儲類型?

G. C51系統中大容量數據存儲方式

如果是常量,一般是存在ROM中和昌告程序放在一起,只需要將這個常量定義成code存儲類型,如果這個常量數組很大,也可以存在外部NVM中頃瞎,例如FLASH,EEPROM等等。
當需要大容量變數時,一般是放在FLASH、雀迅空EEPROM中。

H. c51的存儲 類型 有幾種他們分別表示的存儲區域是什麼

data 直接定址區
idata 間接定址區
xdata 外部寄存器
pdata 分頁定址區
code 程配歲序存儲區
bdata 位尋培運睜址悄升區

I. Keil c51 三種存儲模式的作用是什麼啊

存儲模式只是規段陪定默認的存儲區:\x0d\x0asmall :默認變數在內部RAM中,即data\x0d\x0acompact:默認變數在外部分頁的256位元組RAM中,,即pdata\x0d\x0alarge:默認變數在外部64KRAM中,即xdata\x0d\x0a 如果,char Xdata i這樣顯式地規判燃巧定了變數的存掘鍵放區,則以定義為准。不受存儲模式影響。

J. 關於c51存儲類型和其數據長度,有點不懂,求指點

你上面的表格,可以說,是完全上的邏輯錯誤。
C語言,一個數據類型的長度只有以下幾種:
unsigned char 或者 char 固定8位的長度,即一個位元組
unsigned short 或者 short 固定16位長度,即兩個位元組
unsigned long 或者 long 固定 32位長度,即四個位元組
float固定32位長度,即四個位元組
double ,固定64位長度,即8個位元組,但是在C51里,是32位,因為C51是把double轉換成float來編譯的。
另外還有union和struct,長度是不固定的。
在C51里擴展了bit類型,1個位的長度

長度,只取決與以上類型,與data,idata,bdata,xdata,pdata沒有關系,所以,你上面的表格是錯誤的。

而那些data,idata,bdata,xdata,pdata等等,是變數或者常量的存儲空間。

51單片機有以下幾個內存模塊組成:

ROM或者Flash就不說了。
RAM有------內部RAM的低128位元組(00-7F)
-------內部RAM的高128位元組(80-FF)---【89C51單片機沒有這一段空間】
-------特殊功能寄存器(SFR)(80-FF)
------外部RAM 64K(0000-FFFF)

code表示是在Flash(ROM)中,是只讀的。

data 表示的是內部RAM的低128位元組,可以直接定址,速度比較快

idata 表示內部RAM高128位元組,只能是間接定址,速度比data里的數據要慢。

pdata是外部RAM,也就是xdata中的前256個,也就是外部RAM中的00--FF,只能MOVX 間接定址,但是,因冊檔為可以用R0做為指針,所以,速度與idata是一樣的。

xdata是外部RAM的全部,也可以包括前256個,也就是說,者沖外部RAM前256個,可以用pdata和xdata定義,都行,只能是MOVX 和 DPTR聯合定址,速度最慢。

詳細內容,參考下面的鏈接:
http://..com/question/400032408?&oldq=1

舉例:
data unsigned char a;//---放州嫌亂在內部RAM空間的低128位元組,長度是8位
data unsigned short a;//---放在內部RAM空間的低128位元組,長度是16位
data unsigned long a;//---放在內部RAM空間的低128位元組,長度是32位

idata unsigned char a;//---放在內部RAM空間的高128位元組,長度是8位
idata unsigned short a;//---放在內部RAM空間的高128位元組,長度是16位
idata unsigned long a;//---放在內部RAM空間的高128位元組,長度是32位

pdata unsigned char a;//---放在外部RAM空間的低256位元組,長度是8位
pdata unsigned short a;//---放在外部RAM空間的低256位元組,長度是16位
pdata unsigned long a;//---放在內部RAM空間的低256位元組,長度是32位

閱讀全文

與c51數據存儲類型寫在哪裡相關的資料

熱點內容
如何理解各種平台數據 瀏覽:487
如何不接收抖音的好友信息 瀏覽:639
專業的運營代理怎麼選 瀏覽:813
瓜子二手車交易市場有哪些 瀏覽:993
瀘水牆壩菜市場在哪裡 瀏覽:354
銷售什麼產品來錢快 瀏覽:337
完全競爭市場有哪些線條是重疊的 瀏覽:856
愛普生機械手如何在程序里調速度 瀏覽:815
產品處於密碼鎖定狀態是怎麼了 瀏覽:170
橙心優選怎麼代理地推 瀏覽:990
如何訪問伺服器資料庫 瀏覽:990
山西輔助技術服務是什麼 瀏覽:528
原廠的數據線一般多少錢 瀏覽:407
市場績效工資一般多少 瀏覽:3
評委打分程序在哪裡 瀏覽:483
內江市老城區菜市場有哪些 瀏覽:371
凱爾在哪裡代理 瀏覽:20
保險代理公司怎麼考核 瀏覽:653
去哪裡可以免費開放技術資源 瀏覽:321
給孩子發信息有哪些方法 瀏覽:526