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

正文內容

微機原理與應用ppt課件(編輯修改稿)

2025-04-18 01:44 本頁面
 

【文章內容簡介】 “目的 /源”形式的尋址方式注釋。 ? 一般在計算機系統(tǒng)中,尋址方式越多,表明其功能越強 ,靈活性越大。 ? 尋址方式有 : 立即尋址 ,直接尋址 ,寄存器尋址 ,間接尋址 ,相對尋址 ,變址尋址 ,位尋址 . 尋址方式 1. 立即尋址 : MOV A, 71H ; A←# 71H , #表示立即數(shù), ←表示數(shù)據(jù)傳輸方向,累加器 /立即數(shù)。 在指令中數(shù)據(jù)以立即數(shù)的形式給出 .實際上是沒有操作數(shù)地址 . 2. 直接尋址 : MOV A, 3AH ; A←(3AH) ,其中( 3AH)表示 3AH單 元中的內容,累加器 /直接地址。 指令中直接給出數(shù)據(jù)存放的地址號 . 在直接尋址時,指令中包含了操作數(shù)地址,操作數(shù)存貯在該地址單元中,可用于直接尋址的空間是,內部 RAM低128字節(jié)包括其中的可位尋址區(qū)與特殊功能寄存器。 尋址方式 3. 寄存器尋址 : MOV A, R0 ; A←(R0) ,其中 (R0)表示 R0中的內容,累加器 /寄存器。 指令中給出存放數(shù)據(jù)的寄存器名 . 在寄存器尋址時指定某一可尋址的寄存器中的內容為操作數(shù)。 可用寄存器尋址的空間是: R0R7, ACC, CY(位 ), DPTR, AB。其中:對寄存器 ACC、 B、 DPTR、 CY其尋址時具體的寄存器隱含在其操作碼中的低三位指明,而用戶在 PSW中選擇 RS1, RS0確定寄存器組 . 尋址方式 4. 寄存器間接尋址 : MOV A, @R1 ; A←((R1)), R1中存放的是操作數(shù)地址,累加器 /間址。 指令中給出的是間址寄存器 ,間址寄存器的內容才是數(shù)據(jù)所在的真正地址 .間址寄存器就是一個數(shù)據(jù)地址指針 . 在寄存器間接尋址時,指令中給出的寄存器的內容為操作數(shù)的地址,而將操作數(shù)地址中的內容傳送到 A中, MCS51中可以用 R0或 R1間接尋址片內 128字節(jié)或片外 RAM的 256字節(jié)范圍,可以用 DPTR或 PC間接尋址 64K字節(jié)外部 RAM包括 I/O口或程序存儲器。 尋址方式 5. 變址尋址 MOVC A, @A+DPTR ; A←((A)+(DPTR)), 累加器 /變址。 在變址尋址時,由指令指定的偏移量寄存器中的內容和變址寄存器 PC或 DPTR中的內容相加所得的結果作為操作數(shù)的地址, A為偏移量寄存器,內容為無符號數(shù),它和 DPTR中的內容相加,得到操作數(shù)地址。 指令中給出基址寄存器和偏移寄存器之和 ,以他們的和作為數(shù)據(jù)存放的地址 . 不論用 DPTR或 PC作為基址指針,變址尋址方式都只適用于 MCS51的程序存貯器,通常用于讀取數(shù)據(jù)表格 (查表 ) 。 尋址方式 6. 相對尋址 SJMP rel ; PC←(PC)+ 2+ rel, 累加器 /相對。 在相對尋址時,由指令中指定的地址偏移量 rel與本指令所在的單元地址(即程序計數(shù)器 PC中的內容)相加得到真正操作數(shù)的地址。 偏移量有正有負,以補碼形式給出( 128~ +127)。 例如: JC 80H ;含義是 C=1時跳轉, 跳到 PC←( PC) +2+80H, 注意 80H是 128 的補碼 . 指令中給出的是目的地址與當前程序地址之間的差值 . 尋址方式 7. 位尋址 SETB bit ; bit ←1,位尋址。 在位尋址時,操作數(shù)是二進制數(shù)的某一位 其位地址出現(xiàn)在指令中, 可用于位尋址的空間是,內部 RAM的可 尋址區(qū)和 SFR區(qū)中的字節(jié)地址可以被 8整除 (即地址以“ 0”或“ 8”結尾)的寄存器所占空間。 指令中直接給出操作位的地址號 . 數(shù)據(jù)傳送指令 通用傳送指令: MOV 1.立即數(shù)送累加器 A和內部數(shù)據(jù)存儲器( Rn、片內 RAM、 SFR) MOV A, data ; A←data 立即數(shù) data送入 A中,累加器 /立即數(shù) MOV data, data ; data←data 立即數(shù)送入 data地址單元中,直接 /立即 MOV @Ri, data ; (Ri)←data 立即數(shù)送 Ri指定的地址單元中 ,間址 /立即 MOV Rn , data ; Rn←data 立即數(shù)送 Rn單元中,寄存器 /立即數(shù) 注: # data 表示立即數(shù) data 表示直接地址 Rn 表示 R0、 R …、 R7當前工作寄存器組 Ri 表示 R0或 R1, @Ri 表示目的間接尋址, , Ri為 8位寄存器,尋址范圍 0~ 255。而特殊功能寄存器 SFR僅能被直接尋址,所以對內部數(shù)據(jù)存儲器來說, @Ri間接尋址使用范圍僅為 0~ 127單元內的片內數(shù)據(jù)單元的 RAM地址。 例如: MOV P1, 80H ;直接 /立即 通用傳送指令: MOV 2. 內部數(shù)據(jù)寄存器( Rn、片內 RAM、 SFR)與累加器 A傳送數(shù)據(jù) ? MOV A, data ; A ←(data) ;累加器 /直接 ? MOV A, @Ri ; A ← ((Ri)) ;累加器 /間址 ? MOV A, Rn ; A ← (Rn) ;累加器 /寄存器 ? MOV data, A ; data← (A) ? MOV @Ri, A ; (Ri)← (A) ? MOV Rn , A ; Rn ← (A) ? 注:對于特殊寄存器 SFR只能用直接尋址訪問 ,而無間接尋址方式。 ? 例如:指令序列 ? MOV R1, 82H ;立即數(shù)傳送到 R1中 ? MOV A, @R1 ;間址源超出范圍 ? 由于 82H是 SFR塊中 DPL的地址,對特殊功能寄存器來說,企圖用間址找到源操作數(shù),這種間接尋址方式無效。所以從 DPL中取數(shù)只須 MOV A , 82H 即可。最好使用 MOV R1, DPL;這樣在使用匯編語言時,無需查找地址。 通用傳送指令: MOV ? 3.內部數(shù)據(jù)存儲器中 Rn、 SFR和片內數(shù)據(jù) RAM之間的數(shù)據(jù)傳送 ? MOV data, data ; data ←( data);直接 /直接 ? MOV data, @Ri ; data ←(( Ri));直接 /間址 ? MOV data, Rn ; data ←( Rn);直接 /寄存器 ? MOV @Ri, data ; (Ri) ←(data);間址 /直接 ? MOV Rn, data ; Rn ←(data);寄存器 /直接 ? 例如: MOV P3 , P1與 MOV B0H , 90H 是等價的。其中, B0H是 P3的地址,90H是 P1口的地址。 ? 例如: 設 PSW中 RS1= 1, RS2= 1時 MOV data , R0 和 MOV data , 18H 是等價的。 18H是 RS1=RS2=1選工作寄存器 3區(qū)中的 R0字地址,但直接寫名稱方便,無須查地址。 通用傳送指令: MOV ? 4. 目的地址傳送 ? MOV DPTR , data16 ; DPTR ←data16 ;直接 /立即 ? MOV DPTR,2022H ;把 16位立即常數(shù)裝入數(shù)據(jù)地址指針,其中 DPTR的高八位( DPH) =20H,低八位( DPL) =03H。 ? 例如:若片外數(shù)據(jù)存儲器單元( 3007H) =60H,執(zhí)行 MOV DPTR, # 3007H; DPTR存放的是數(shù)據(jù) 3007H,而執(zhí)行 MOVX A,@DPTR; @DPTR存放的是地址,結果 A=60H. 外部數(shù)據(jù)存貯器(或 I/0口)與累加器 A傳送指令――MOVX 格式 MOVX 目的字節(jié) ,源字節(jié) ? MOVX A,@DPTR ; A ←(( DPTR)),累加器 /間址 DPTR稱為 16位的間址寄存器,利用該寄存器中存放的地址值找到源、目的地址 ,而要找到 DPTR本身仍然只能用直接尋址 . ? MOVX @DPTR, A ; (DPTR) ←(A), 間址 /累加器 ? MOVX A, @Ri ; A ←((Ri)),累加器 /間址 ? MOVX @Ri, A ; (Ri) ←(A),間址 /累加器 注: 1)前兩條指令中,(( DPTR))表示將 DPTR( 16位)地址所指向的外RAM中的內容裝入 A寄存器中。反之,則將 A中內容送入 DPTR指向的 RAM單元中。 2)后兩條指令中,(( Ri))表示將 Ri( 8位)地址所指向的位 RAM中的內容裝入 A寄存器中。反之,則將 A中內容送入 Ri指向的 RAM單元中。這種方式適用于,外 RAM僅擴展 256字節(jié)的情況。 3)通常,在 MCS51中, 16位地址線的尋址范圍為 64K字節(jié)。常把高八位定義為頁面地址,低八位定義為頁面內地址。在 P2口給定時,使用 Ri尋址頁面內地址比較方便。 程序存貯器向累加器 A 傳送指令 ――MOVC ? MOVC A,@A+PC ;累加器 /變址 PC←(PC)+1, A ←(( A) +( PC)) ? MOVC A,@A+DPTR ; A ←(( A) +( DPTR)) ? 注:把 A中的內容與基址寄存器( PC、 DPTR)內容相加,得到程序存貯器某單元地址,再把該地址單元內容送累加器 A ? 前一條指令是以 PC為基地址寄存器, CPU取完指令后, PC會自動加 1,指向下一條指令的第一個字節(jié)地址,所以這時作為基地址寄存器的 PC值已變成 (PC)+1時的值。 ? 偏移量: DIS=表首地址 (該指令所在地址 +1) 該指令本身在程序存儲器中占用一個單元,先有該指令的解釋,才有其執(zhí)行的操作。 程序存貯器向累加器 A 傳送指令 ――MOVC ? 例如:若要根據(jù)累加器 A的內容找出由偽指令 DB所定義的四個值中的一個,設 (A)=02H,可用下列程序: ? ppqq: ADD A, 01H ? ppqq+2: MOVC A, @A+PC ? ppqq+3: RET ? ppqq+4: STAR: DB 66H ? DB 77H ? DB 88H ? DB 99H ? CPU執(zhí)行 ADD A,01H指令,就是為了加上偏移量:DIS=ppqq+4(ppqq+2+1)=1。其中 DB是偽指令,它的作用是把其后的值(如 66H,77H)存入由標號 STAR開始的連續(xù)單元中。假設累加器原內容為 02H,則執(zhí)行上述程序后返回時累加器將變?yōu)?88H. 例如:試編制根據(jù)累加器 A中的數(shù)( 0~ 9之間)查其平方表的子程序。 COUNT: PUSH DPH ;保護 DPTR內容 PUSH DPL MOV DPTR,TABLE ;賦表首址到 DPTR MOVC A,@A+DPTR ;據(jù) A中內容查
點擊復制文檔內容
規(guī)章制度相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1