freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

[計(jì)算機(jī)硬件及網(wǎng)絡(luò)]第3章80c51單片機(jī)的存儲(chǔ)器結(jié)構(gòu)-閱讀頁

2024-11-03 03:58本頁面
  

【正文】 圍在 128~ +127之間,若運(yùn)算的結(jié)果 超出這個(gè)范圍,溢出(結(jié)果出錯(cuò))。 F0:用戶位,用戶可以作為一般的一位二進(jìn)制數(shù)的存儲(chǔ)器使 用。 注:★ CY、 AC、 OV、 P這 4個(gè)標(biāo)志位由指令運(yùn)行后,對其 產(chǎn)生影響(由硬件產(chǎn)生各標(biāo)志),主要用于算術(shù)運(yùn)算 類指令,除了 CY一般這 3位不會(huì)用于數(shù)據(jù)的存儲(chǔ), CY也是位處理器( 1位的 CPU)中的累加器,在位操 作中使用較為頻繁。 ★ RS RS0是工作寄存器組的選擇位,由用戶根據(jù)需 要通過指令來設(shè)定,去選擇寄存器組(軟件設(shè)定)。 解: [X]補(bǔ)碼 =F3H, [Y]補(bǔ)碼 =FAH, [X+Y]補(bǔ)碼,則: [X]補(bǔ)碼 : 1 1 1 1 0 0 1 1 B [Y]補(bǔ)碼 : + 1 1 1 1 1 0 1 0 B [X]補(bǔ)碼 +[Y]補(bǔ)碼 : 1 1 1 1 0 1 1 0 1 B 在單片機(jī)中,上述運(yùn)算后, (CY)=1, (AC)=0, (OV)= Cy6⊕ Cy7=1⊕ 1=0(結(jié)果正確), (P)=0。 D 7 D 6 D 5 D 4D 3 D 2 D 1 D 0D P H8 3 HD 7 D 6 D 5 D 4D 3 D 2 D 1 D 0D P L8 2 HD 1 5 D 1 4 D 1 3 D 1 2D 1 1 D 1 0 D 9 D 88 3 HD 7 D 6 D 5 D 4D 3 D 2 D 1 D 08 2 HD P T R 在指令中一般都是以一個(gè) 16位的寄存器 DPTR使用 ,用于存放外部數(shù)據(jù)存儲(chǔ)器的地址和程序程序器的地址,訪問外部數(shù)據(jù)存儲(chǔ)器是用 DPTR,稱之為 寄存器間接尋址 ;訪問程序存儲(chǔ)器是用 A+DPTR,稱之 為變址尋址 。 5.堆棧指針 SP( 81H) 堆棧是 CPU 用于暫時(shí)存放部分?jǐn)?shù)據(jù)的“倉庫” ,它的作用是用來保護(hù)現(xiàn)場和保護(hù)斷點(diǎn)。存儲(chǔ)單元的個(gè)數(shù)稱為堆棧的深度,可理解為倉庫容量。 80C51單片機(jī)中用堆棧指針 SP( 81H)來實(shí)現(xiàn)數(shù)據(jù)的先進(jìn)后出,后進(jìn)先出,即不可位尋址。一般為了書寫方便,堆棧的示意圖,如圖 314所示。進(jìn)棧時(shí),首先堆棧指針加 1,即 (SP) ←(SP)+1 ,然后數(shù)據(jù)進(jìn)棧;出棧時(shí),先取堆棧的數(shù)據(jù),然后堆棧指針減 1,即 (SP) ←(SP) 1。二是軟件操作,由指令PUSH direct(進(jìn)棧)和指令 POP direct(出棧)來實(shí)現(xiàn)。下面以軟件操作加以說明。 PUSH 40H PUSH 41H POP 40H POP 41H 解:根據(jù)初始條件,得示意圖,存儲(chǔ)器中沒有提到單元的數(shù)據(jù)為任意值。第一個(gè)進(jìn)棧的數(shù)據(jù)不是堆棧指針指向的初始單元,在計(jì)算機(jī)中數(shù)據(jù)的傳送,不是完全給予的意思,而是復(fù)制, 40H單元數(shù)據(jù)進(jìn)棧后,影響了堆棧指針指向的單元,但不影響 40H這個(gè)單元的原始數(shù)據(jù),所以 40H的數(shù)據(jù)仍為 22H。進(jìn)棧后,示意圖如圖 316( b)所示。 執(zhí)行第四條指令 POP 41H,出棧過程同第四條指令,示意圖如圖 316( d)所示。但原來進(jìn)棧的數(shù)還存于堆棧中,直到下次進(jìn)棧的數(shù)據(jù)將其覆蓋。 系統(tǒng)復(fù)位時(shí)堆棧指示器的值為 07H,即指向的是工作寄存器區(qū) 0組的 R7單元,如圖 317所示,第一個(gè)入棧的數(shù)放于08H單元,但堆棧一般開辟在用戶區(qū)( 30H~7FH)中。若根據(jù)某個(gè)程序設(shè)計(jì)的需要,需要 16個(gè)單元堆棧來存儲(chǔ)數(shù)據(jù),堆棧開辟在40H到 4FH單元,則堆棧指示器 SP的初始值應(yīng)付 3FH,第一個(gè)入棧的數(shù)放入 40H中,在程序的設(shè)計(jì)中, 40H~41H中不能用于其它的數(shù)據(jù)的存放,否則數(shù)據(jù)被覆蓋。堆棧指針始終指向的是堆棧的棧頂位置。 ★ 這 18個(gè) SFR, 21個(gè)單元中,字節(jié)地址能被 8整除的單 元是可以進(jìn)行位尋址的,也就是說字節(jié)地址的后面 一位是 0或者 8,都是可以進(jìn)行位尋址的( bit)。 ★ 系統(tǒng)復(fù)位后,各寄存器的值如表 34所示。 AT89S51單片機(jī)內(nèi)部有 4K的程序存儲(chǔ)器FlashROM,外部最多可擴(kuò)展 64K的程序存儲(chǔ)器,內(nèi)外程序存儲(chǔ)器采用統(tǒng)一編址的方法,即共用 64K的地址,地址范圍0000H~FFFFH,不管是內(nèi)部還是外部都是用指令 MOVC來訪問。 0000 HFFFFH0 FFFH1000 H內(nèi)部程序儲(chǔ)存器 4 K( R O M )外部程序儲(chǔ)存器可擴(kuò)展64 K( R O M ) ● 8051(80C51)系列有 64K ROM 的尋址區(qū),地址范圍0000H~FFFFH,用于存放程序。 ● 高 60K(1000H~FFFFH) 的地址區(qū)為片外 ROM所專用。 2. CPU對程序存儲(chǔ)器中程序的訪問 CPU對存儲(chǔ)器的訪問也就是執(zhí)行程序,程序存儲(chǔ)器的主要作用是用來存放程序,那 CPU怎么去執(zhí)行程序呢?怎么知道哪一條指令先執(zhí)行?哪一條指令后執(zhí)行呢?其實(shí)計(jì)算機(jī)根本不認(rèn)程序,只認(rèn)程序存儲(chǔ)器的單元地址,先從低字節(jié)地址單元開始取指令執(zhí)行,然后取高字節(jié)地址單元指令執(zhí)行,而CPU這些操作,都是通過程序計(jì)數(shù)器 PC(程序指針)來實(shí)現(xiàn), PC是一個(gè) 16位的寄存器,不可尋址(無地址),用戶不可操作,系統(tǒng)復(fù)位后( PC)= 0000H,每取一個(gè)單元程序執(zhí)行后, PC會(huì)由硬件自動(dòng)加 1,去取下一個(gè)單元來執(zhí)行,以此類推,直到遇到轉(zhuǎn)移指令為止,轉(zhuǎn)移時(shí) CPU會(huì)將轉(zhuǎn)移位置的地址直接付給 PC,從這個(gè)新的地址開始,又重復(fù)上述過程。又由于 PC復(fù)位后指向 0000H單元,故主程序的第一條指令必須放在 0000H開始的單元, 0000H也就是主程序的入口地址。 3. CPU對程序存儲(chǔ)器中數(shù)表的訪問 數(shù)表即在數(shù)據(jù)處理過程中用到的一些固定不變的常數(shù),如 值 ,要由指令來讀出。 注:★ 不管是程序還是數(shù)表,在程序存儲(chǔ)器中都是二進(jìn)制 數(shù),程序只能由 CPU直接訪問并執(zhí)行,數(shù)表只能由 上述的兩條指令來讀取,在編程時(shí)要注意避免將數(shù)表 當(dāng)程序來執(zhí)行。
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1