日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > windows >内容正文

windows

信息安全系统设计基础第六周学习总结—20135227黄晓妍

發(fā)布時間:2025/4/16 windows 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 信息安全系统设计基础第六周学习总结—20135227黄晓妍 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

第四章

?

ISA

指令集體系統(tǒng)結(jié)構(gòu):一個處理器支持的指令和指令的字節(jié)級編碼。

不同的處理器家族有不同的ISA。

?

Y86

本章定義的一個簡單的指令集。包括各種狀態(tài)元素、指令和它們的編碼、一組編程規(guī)范和異常事件處理。

Y86處理器

以順序指令執(zhí)行為基礎(chǔ),設(shè)計了一個流水化的處理器。將每條指令分成5步,每個步驟都由一個獨立的硬件部分或者階段來處理。每個時鐘周期有新的指令進入流水線,即說該處理器可以同時執(zhí)行5條指令的不同階段。(重點在于如何處理冒險沖突的情況。數(shù)電,EDA中的概念)

?

4.1.1 程序員可見狀態(tài)

即:Y86程序中每條指令都會讀取或者修改處理器狀態(tài)的某些部分的狀態(tài)。

幫助理解 ??程序員:用匯編代碼寫程序的人,產(chǎn)生機器代碼的編譯器。

具體內(nèi)容?? 8個程序寄存器(與IA32 一樣),3個條件碼(ZF,SF,OF)。PC程序計數(shù)器存放當(dāng)前正在執(zhí)行指令的地址。存儲器,很大的字節(jié)組,保存著程序和數(shù)據(jù)。狀態(tài)碼Stat,表明程序的總體狀態(tài)。(見p232圖4—1)

?

4.1.2 Y86指令

背景知識:一條指令含有一個單字節(jié)的指令指示符。可能含有一個單字節(jié)的寄存器指示符,還可能含有一個四字節(jié)的常數(shù)字。字段fn說明是 某個整數(shù)操作opl,數(shù)據(jù)移動條件comvXX,分支條件Jxx。

?

movl指令:

???????? irmovl , rrmovl , mrmovl , rmmovl .

i:立即數(shù)r:寄存器m:存儲器。

第一個字母代表源操作數(shù),第二個字符代表目的操作數(shù)。

注意:有存儲器尋址參與的兩種movl指令,采用基址和偏移量形式。不支持第二變址寄存器和任何寄存器值得伸縮。

(p233頁有以下詳情)

4個整數(shù)操作指令:addl,subl,andl,xorl.

?

7個跳轉(zhuǎn)指令。

?

6個條件傳送指令。

?

Call指令返回地址入棧,人后跳回目的地址。 Ret令從這樣的調(diào)用中返回。

?

Pushl popl入、出棧。

?

Hatl將處理器停止,并將狀態(tài)碼設(shè)定為HLT。

?

4.1.3指令編碼

每條指令的第一個字節(jié):

高四位0~B表示,是代碼部分。手工對指令編碼時參照p232頁的表格。注意rrmovl和cmovXX取值一樣。

低四位是功能部分。除了opl,jXX,cmovXX以外全為0.這三者的指令對應(yīng)的值,參照p233頁的圖。

附加部分:

寄存器指示符:參照p234頁的表格,對應(yīng)的寄存器的編號。

4字節(jié)的常數(shù)字(這個部分采用小端法):

  • irmovl中的立即數(shù)數(shù)據(jù)
  • mmovl,mrmovl中存儲器m地址指示符的偏移量
  • 分支指令jXX的目的地址(絕對地址)
  • 調(diào)用指令call的目的地址(絕對地址)
  • ?

    根本前提:字節(jié)編碼和指令序列是一一對應(yīng)的。

    ?

    4.1.4Y86異常

    使用狀態(tài)碼stat描述。一共有四種取值。(見p237)在Y86中除了等于1以外的其他情況,都會使處理器停止(在IA32或者更完整設(shè)計的ISA中,都會調(diào)用一個異常處理程序但這個是簡化版咯。)

    ?

    4.1.5Y86完整的程序

    和IA32的匯編程序一樣,包括代碼段數(shù)據(jù)段和代碼。“.”開頭的詞語是匯編器命令。

    理解見p238.239.240的程序。基本和匯編程序是一樣的。

    ?

    ?

    4.2邏輯設(shè)計

    這部分與以前學(xué)習(xí)過的電子電路,數(shù)字電路,EDA關(guān)聯(lián)性非常大。

    前提知識點:

    *邏輯1是用1V左右的高電壓表示的。

    *邏輯0使用0V左右的低電壓表示的。

    *實現(xiàn)一個數(shù)字系統(tǒng):計算對位進行操作的函數(shù)的組合邏輯、存儲位的存儲器元件、控制存儲器元件更新的時鐘信號。

    4.2.1邏輯門:

    只對單個位的數(shù)進行操作,而不是整個字。

    與:&&? 或: ||? 非: !

    ?

    4.2.2組合電路:

    很多邏輯門組合成一個網(wǎng)構(gòu)建的計算塊。(注意兩個或多個輸出不能連接在一起,并且無環(huán)。)

    HCL表達式與C語言中的表達式的區(qū)別:

    *HCL中輸出會持續(xù)隨著輸入變化而變化。而C語言中只有在程序執(zhí)行到的時候才進行求值。

    *HCL只對0和1操作。C語言中,0是FLASE,除了0以外的所有整數(shù)都是TRUE

    *C中&&和||這兩種,是優(yōu)先求值,(&和|并不是)第一個值就能確定結(jié)果的話,它不會去計算第二個值。但是HCL中并沒有這樣的規(guī)則。

    ?

    4.2.3字級的組合電路和HCL整數(shù)表達式

    例如:bool eq=(A==B);

    在HCL硬件描述語言中,每個字都可以聲明為特定的位數(shù)。允許描述自是否相等。輸出eq表示AB是否相等。

    畫字級電路的時候,實線表示攜帶字的每個位的線路,虛線表示布爾信號的結(jié)果。

    ?

    多路復(fù)用函數(shù)使用情況表達式描述:

    [

    ???????? Select:expr

    ]

    Select代表什么時候選擇這種情況

    Expr表示該種情況得到的數(shù)值

    注意:順序執(zhí)行,第一個求值為1 的情況會被選中。一般最后一個表達式是 1:expr。表示的意思是前面所有情況都沒有選中,就執(zhí)行最后這個。

    ?

    例如:

    Int out=[

    ???????? S&&q :a

    ???????? S&&w:b

    ???????? 1??? :c

    ]

    算術(shù)\邏輯單元:

    兩部分組成:數(shù)據(jù)輸入,控制輸入。

    控制輸入代表不同的算術(shù)或邏輯操作。

    0:+

    1:-

    2:&

    3:^

    ?

    4.2.4集合關(guān)系

    書上的引入例子是數(shù)據(jù)選擇器,是EDA 中學(xué)習(xí)的七個基本集合電路中的一個。

    ?

    4.2.5存儲器和時鐘

    時鐘寄存器:(硬件寄存器)存儲單個位或字。時鐘信號控制寄存器加載輸入值。

    隨機訪問存儲器(存儲器)存儲字,用地址來選擇該讀或該寫那個字。

    ?

    4.3Y86的順序?qū)崿F(xiàn)

    處理指令階段化:

    取值譯碼(從寄存器讀入最多兩個操作數(shù))、執(zhí)行訪存(寫入,讀出存儲器)、寫回(寫最多兩個結(jié)果到寄存器)、更新PC(設(shè)置為下一條指令的地址)。

    ?

    取值:valC四字節(jié)常數(shù)字valP下一條指令的地址。

    譯碼:從寄存器讀入的數(shù)valA,valB.

    執(zhí)行:計算出的值valE.

    訪存:從存儲器讀出的值valM.

    寫回:寫入寄存器的結(jié)果。

    更新PC

    ?

    SEQ硬件結(jié)構(gòu):

    計算中不一樣的地方:

    ???????? 四個寄存器的ID信號:srcA,valA的源;srcB,valB的源;dstE,寫入valE的寄存器;dstM,寫入valM的寄存器。

    ?

    SEQ的時序:

    需要時序控制的控制的四個硬件:程序計數(shù)器、條件碼寄存器、數(shù)據(jù)寄存器、寄存器文件。

    它們的值要等時鐘信號(上升沿或者下降沿來臨時才改變)。

    ?

    SEQ階段的實現(xiàn):

    取值:第一個字節(jié)Split:由icode和ifun組成。Align:一字節(jié)的寄存器指示符和四字節(jié)的常數(shù)字。

    譯碼和回寫:讀、寫端口都有一個地址連接(寄存器ID)和數(shù)據(jù)連接(寄存器文件的輸出、入字)。

    執(zhí)行階段

    訪存階段更新PC

    ?

    參考資料:《深入理解計算機系統(tǒng)》

    轉(zhuǎn)載于:https://www.cnblogs.com/angelahxy/p/4889991.html

    總結(jié)

    以上是生活随笔為你收集整理的信息安全系统设计基础第六周学习总结—20135227黄晓妍的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。