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

正文內容

《目標代碼生成》ppt課件-全文預覽

2025-05-22 22:17 上一頁面

下一頁面
  

【正文】 ) MOV A, AX ?如何充分利用寄存器 第 7章 目標代碼生成 待用信息與活躍信息 在一個基本塊內的目標代碼中 , 為了提高寄存器的使用效率 , 應將基本塊內 還要被引用的值盡可能地保留在寄存器中 , 而將基本塊內 不再被引用的變量所占用的寄存器盡早釋放 。 (.exe或 .) (2)待裝配的機器語言模塊。 代碼生成器: – 目標代碼的常見形式 (1)可立即執(zhí)行的機器語言代碼。 第 7章 目標代碼生成 ? 低效的代碼生成器 :不考慮代碼的效率 , 可以簡單地把每條中間代碼 (四元式 )映射成若干條目標指令 例如 , 一 C語言語句為 A=(B+C)*D+E, 把它翻譯為四元式 G: T1=B+C T2=T1*D A=T2+E 代碼生成器將形如 x=y+z的三地址代碼映射為: MOV AX, y /*AX為寄存器 */ ADD AX, z MOV x, AX 第 7章 目標代碼生成 這樣 , 上述四元式代碼序列 G就可翻譯為: (1) MOV AX, B (2) ADD AX, C (3) MOV T1, AX (4) MOV AX, T1 (5) MUL AX, D (6) MOV T2, AX (7) MOV AX, T2 (8) ADD AX, E (9) MOV A, AX ?(4)和 (7)兩條指令是多余的; ?T T2是中間代碼生成時產(chǎn)生的臨時變量,它們在出了基本塊后將不再使用,故 (3)、 (6)兩條指令也可刪去。 上例中如在 i之后 A被不再被引用 , 則稱 A為非活躍的 , 否則稱 A在i是活躍的; ? 如果 A被多處引用 , 則構成了 A的待用信息鏈與活躍信息鏈 。 ? 假設變量的符號表內有待用信息和活躍信息欄 , 則計算變量待用信息的算法如下: 第 7章 目標代碼生成 (1) 將基本塊中各變量的符號表的 待用信息欄置為 “ 非待用 ” , 對 活躍信息欄 則根據(jù)該變量在基本塊出口之后是否活躍而將該欄中的信息置為 “ 活躍 ” 或 “ 非活躍 ” 。 第 7章 目標代碼生成 表 例 變量名 待 用 信 息 活 躍 信 息 初值 待 用 信 息 鏈 初值 活 躍 信 息 鏈 T F (3) F F L L F A F (2) (1) L L B F (1) L L C F (2) L L U F (4) (3) F F L L F V F (4) F F L F D F F L F 第 7章 目標代碼生成 待用信息和活躍信息在四元式上的標記如下: (1) T(3)L=A(2)L?BFL (2) U(3)L=AFL?CFL (3) V(4)L=TFF+U(4)L (4) DFL=VFF+UFF 第 7章 目標代碼生成 代碼生成算
點擊復制文檔內容
教學課件相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1