A. C51中的data和idata有什麼區別,謝謝了
1、作用機理不一樣:
data:直接定址的片內RAM區低128B(00H~7FH)。
idata::單片機間接訪問的片內RAM區,允許訪問全部片內RAM。
2、使用的方向不一樣:
data:計算機中程序、文稿、數字、圖像、聲音等信息。
idata:idata是51系列單片機能識別的存儲器類型之一,固定指前面0x00-0xff的256個位元組的片內RAM,其中前128位元組和data的128位元組完全相同,只是因為訪問的方式不同。
(1)單片機data擴展閱讀:
C51中的data和idata的應用方向:
data:直接定址的片內RAM區低128B(00H~7FH)。
bdata:片內RAM的可位定址區(20H~2FH),允許位元組和位混合訪問。
idata:單片機間接訪問的片內RAM區,允許訪問全部片內RAM。
pdata:Ri間接訪問的片外RAM的低256B(00H~FFH)。
xdata:用DPTR間接訪問的片外RAM,允許訪問全部64KB片外RAM(0000H~FFFFH)。
code:單片機的64KB程序存儲區ROM。
data:所謂數據就是描述事物的符號。在我們的日常生活中,數據無所不在。數字、文字、圖表、圖象、聲音等都是數據。人們通過數據來認識世界,交流信息。dos命令:
計算機用語:在51單片機中,DATA表示data area,數據區。DATA並不是修改日期命令
B. 單片機匯編中DATA什麼意思
data指的就是一個數值,二進制,十進制,十六進制都可以,沒有特別說明位數,一般指的是八位的,就是最大不超過255,#data16指的是一個16位的二進制數。
C. 單片機data是什麼
data:是指將要定義的變數,是用存儲在單片機最內部的128位元組RAM;
idata:是指將要定義的變數,存儲在單片機內部的256位元組RAM,idata包含data;
xdata:是指將要定義的變數,存儲在單片機外部的RAM空間。
還有pdata,bdata,code等,你可以找個單片機C語言的書看一下就明白了。
D. 51單片機中的data和xdata總共容量是 多少
不能確定,不同牌子及不同型號的單片機,其帶的ram和擴展內存都各不相同,依實際情況而定
一般的,data都有128位元組 晶元內置ram至少128位元組 至多也只256位元組,具體多少可查相關的手冊,data固定指最開頭的128位元組,內置的256位元組內存又稱為idata(包含data),高於128位元組的ram不一定存在
擴展內存為xdata,部分型號的晶元內置有少量的擴展內存,如內置512節字xdata 或1K byte xdata比較常見,如果接外置的擴展內存,則xdata最大可以到640K,實際有多少你得查手冊
E. 51單片機DATA什麼意思
一種單片機的數據類型,在直接定址片內數據存貯區,訪問速度快。還有位定址區(bdata)、間接定址區(idata)、代碼存貯區(code)、外部存儲區(xdata)
F. 關於單片機內存問題,DATA和XDATA具體是怎麼樣的
選擇small 模式你定義的變數默認為data模式,即變數存放與單片機的內部ram,而large模式下,定義的變數存放於外部ram。前者運算速度快於後者。
G. 單片機里的code xdate date 分別代表什麼東東
存儲類型的聲明
code 是聲明存放在程序存儲器里,單片機上的flash多大,code段就有多大
xdata 是聲明片外數據類型的聲明,片外存儲器上的變數
data 是片內RAM的低128位數據存儲聲明,速度最快,但區域較小,經常不夠用
H. 單片機原理與應用中data idata xdata code 分別指什麼空間
data: 固定指前面0x00-0x7f的128個RAM,可以用acc直接讀寫的,速度最快,生成的代碼也最小。
idata:固定指前面0x00-0xff的256個RAM,其中前128和dATa的128完全相同,只是因為訪問的方式不同。
idata是用類似C中的指針方式訪問的。
匯編中的語句為:mox ACC,@Rx.(不重要的補充:c中idATa做指針式的訪問效果很好)
xdata: 外部擴展RAM,一般指外部0x0000-0xffff空間,用DPTR訪問。
code是在 0000H .. 0FFFFH 之間的一個代碼地址,程序存儲區 (64k 地址范圍),對應匯編指令
MOVC @DPTR
I. 單片機中DATA指的是單片機內的那個地址
對於51單片機,DATA修飾的變數是指內部低128位元組的RAM區,DATA可以省略
J. 51單片機Uchar data i 和data union i 有什麼好處
data 是51的關鍵字,放在變數名前面即可,在類型前面或後面都可以,data主要說明數據保存在片內RAM裡面,還有個code關鍵字,code關鍵字是說數據保存在flash里頭,一般定義變數不用data也行,因為默認變數保存在ram里頭,如果一個字元串在程序中不會被修改,那麼最好在他的前面加上code,將他們保存在flash里頭,這樣可以節約內存(ram),注意保存在flash中的數據是不能修改的,因為flash用來存儲程序的,如果用來存儲數據那麼這個數據是不能變的。我有問題:為什麼tmp是0~127?他是unsigned int 是兩個位元組啊,保存數據范圍是0-65535(6萬),程序if(tmp ==10000),tmp打變化范圍應該是0-10000才對