找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2258|回復: 11
收起左側

單片機C語言位定義不太明白

[復制鏈接]
ID:352989 發(fā)表于 2023-3-9 17:21 | 顯示全部樓層 |閱讀模式
sfr P0      = 0x80;
sfr SP      = 0x81;
sfr DPL     = 0x82;
sfr DPH     = 0x83;


sbit P0_0 = 0x80;
sbit P0_1 = 0x81;
sbit P0_2 = 0x82;
sbit P0_3 = 0x83;


這種定義,地址都重復了也可以,網(wǎng)上看了看解釋,還是不明白。大家能幫忙解釋下嗎?


回復

使用道具 舉報

ID:624769 發(fā)表于 2023-3-9 22:16 | 顯示全部樓層
兩種尋址方式, 一個字節(jié)尋址,一個是位尋址,  
位的  0x80   對應到 字節(jié)的 0x80 的 0 位
位的  0x81   對應到 字節(jié)的 0x80 的 1 位
位的  0x82   對應到 字節(jié)的 0x80 的 2 位

你可以把  
sbit P0_0 = 0x80;   理解成: sbit P0_0 = 0x80^0;
sbit P0_1 = 0x81;   理解成: sbit P0_1 = 0x80^1;
回復

使用道具 舉報

ID:824490 發(fā)表于 2023-3-10 01:00 | 顯示全部樓層
同樣一個男人,在家里是老公,在廠旦是電工。
回復

使用道具 舉報

ID:883242 發(fā)表于 2023-3-10 06:07 | 顯示全部樓層
哪怕把MCS51匯編稍微理解一些都不會問出這種問題。
回復

使用道具 舉報

ID:149799 發(fā)表于 2023-3-10 07:54 | 顯示全部樓層
sfr P0   =0x80;   sfr  SP   =0x81; sfr  DPL   =0x82;  sfr  DPH   =0x83;這里定義的和下面的定義重復了,是不是說為了好分析程序才這樣寫的,比如SP/DPL/DPH,代表的是某個功能。有大佬幫忙詳細的解釋解釋嗎,謝謝。
回復

使用道具 舉報

ID:378108 發(fā)表于 2023-3-12 00:17 | 顯示全部樓層
注意,一個是 sfr,一個是sbit,兩套系統(tǒng)
回復

使用道具 舉報

ID:352989 發(fā)表于 2023-3-12 17:00 | 顯示全部樓層
Hephaestus 發(fā)表于 2023-3-10 06:07
哪怕把MCS51匯編稍微理解一些都不會問出這種問題。

還請賜教!
回復

使用道具 舉報

ID:1048293 發(fā)表于 2023-3-12 17:15 | 顯示全部樓層

大神請賜教。! 跪謝!
回復

使用道具 舉報

ID:57657 發(fā)表于 2023-3-12 17:50 | 顯示全部樓層
sfr為字節(jié)寄存器地址,范圍:0x80~0xFF,其中有16個地址可以位尋址,不能被8整除的不能位尋址訪問(STC32除外)。
sbit為位寄存器地址,16個可位尋址字節(jié)有128個位地址,范圍:0x80~0xFF,用于寄存器的位尋址訪問。
回復

使用道具 舉報

ID:883242 發(fā)表于 2023-3-12 17:56 | 顯示全部樓層

你去看下51匯編。
回復

使用道具 舉報

ID:1034262 發(fā)表于 2023-3-13 10:46 | 顯示全部樓層
尋址方式不同,地址可以重復。
回復

使用道具 舉報

ID:352989 發(fā)表于 2023-3-14 16:57 | 顯示全部樓層
感謝大家的幫助,我還是好好學下匯編吧。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表