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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

计组课程设计

發布時間:2023/12/10 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 计组课程设计 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

計算機組成與系統結構課程設計實驗報告

?

?

?

?

學院: 計算機學科與網絡工程學院??????????????????????

專業班級: 計算機科學與技術172????????????????????

姓名:? ? ? ? ? ? ? ? ? ? ? ??

學號: ? ? ? ? ? ? ? ? ? ? ??

?

?

?

?

2019.06.20

?

廣州大學學生實驗報告

開課學院及實驗室:計算機科學與工程實驗室???????????????? ??????2019年 6 月20日

學院

計算機科學與教育軟件學院

年級/專業/

計科172

姓名

?

學號

?

實驗課程名稱

計算機組成與系統結構實驗課

成績

?

實驗項目名稱

計算機組成與系統結構課程設計

指導老師

?

?

2、課程設計的性質、目的、任務

《計算機組成與系統結構課程設計》是計算機學院各專業集中實踐性環節之一,是學習完《計算機組成與系統結構》課程后進行的一次全面的綜合練習。其目的是綜合運用所學計算機原理知識,設計并實現一臺模型計算機,以便鞏固所學的知識,提高分析問題和解決問題的能力。

  • 課程設計的基本理論
  • 1、掌握算術、邏輯、移位運算實驗,熟悉ALU運算控制位的運用。

    2、掌握存儲器組織、讀寫方式及與總路線組成的數據通路,掌握地址總線、數據總線的工作原理。

    3、掌握指令結構和指令取指、執行工作過程。

    4、掌握CPU的微程序控制原理。

    4、課程設計的題目

    綜合運用所學計算機原理知識,設計并實現具有以下16條指令的指令集結構的模型計算機:

    編號

    助記符

    機器指令碼

    說明

    0

    SUB? Rd,Rs

    0000 RdRs?

    Rd-Rs→Rd

    1

    ADD? Rd,Rs

    0001 RdRs?

    Rd+Rs→Rd

    2

    AND? Rd,Rs

    0010 RdRs?

    Rd&Rs→Rd (Rd和Rs相與)

    3

    DEC Rd

    0011 Rd00

    將Rd值減1

    4

    CLR Rd

    0100 Rd00

    將Rd清零

    5

    RL? Rd

    0101 Rd00??

    Rd循環左移一位

    6

    RR? Rd

    0110 Rd00

    Rd循環右移一位

    7

    MOV Rd,Rs?

    0111 RdRs

    Rs→Rd

    8

    LDI ?Rd,*

    1000 Rd00?? XXXXXXXX

    將指令中的立即數(第二字節)送入Rd

    9

    OUT? IOH,Rs

    1001 00Rs

    Rs→i/o(數據開關)高字節

    10

    LDA? Rd,M

    1010 Rd00? ?XXXXXXXX? ?XXXXXXXX

    [M] →Rd

    11

    STA? M,Rs

    1011 00Rs? ?XXXXXXXX ??XXXXXXXX

    Rs→[M]

    12

    JMP M

    1100 0000 ?XXXXXXXX ??XXXXXXXX

    [M]→PC,即跳轉到M所指單元

    13

    JZ M

    1101 0000 ?XXXXXXXX ??XXXXXXXX

    當Z=1時,跳轉到M所指單元

    14

    JC M

    1110 0000 ?XXXXXXXX ??XXXXXXXX

    當CY=1時,跳轉到M所指單元

    15

    HALT

    1111 0000

    停機

    ?

  • check_1
  • ;課程設計檢查程序1,含除跳轉指令外的12條指令:

    add,and,dec,ldi,clr,rl,rr,ldr,sta,mov,out,hlt

    #LOAD "lcy.IS"? ;預調入指令系統/微程序,用自己的微程序文件名稱

    ??? org?? 0

    ???????

    start:LDI? r0,12h

    sta 100h,r0

    lda r1,100h

    dec r1

    rl r0

    add r0,r1

    rr r0

    add r0,r1

    ldi r2,76h

    and r2,r0

    mov r3,r2

    add r3,r1

    clr r0

    out ioh,r3

    hlt

    ? end

  • check_2
  • ;課程設計檢查程序2,含3條跳轉指令:jz,jc,jmp

    #LOAD "lcy.IS"? ;預調入指令系統/微程序,用自己的微程序文件名稱

    ??? org?? 0

    start:

    ?

    LDI? r0,12h

    sub? r0,r0

    jz tag1

    ldi? r3,0eeh

    jmp tag2

    tag1:ldi r3,33h

    tag2:ldi r0,88h

    add r0,r0

    jc tag3

    ldi r2,0eeh

    jmp tag4

    tag3:ldi r2,22h

    tag4:ldi r1,11h

    ldi r0,0

    add r1,r0

    jz tag5

    jmp tag6

    tag5:ldi r1,0eeh

    tag6:jc tag7

    ldi r0,0h

    jmp tag8

    tag7:ldi r0,0eeh

    tag8:hlt

    ? end

    ?

    5、畫出微程序流程圖(樹型圖)

    ?

    6、填寫所設計的模型機微指令表(只填寫有微指令的相關行):

    微址00002)1)

    M23

    M22

    M21

    M20

    M19

    M18

    M17

    M16

    代碼

    M15

    M14

    M13

    M12

    M11

    M10

    M9

    M8

    代碼

    M7

    M6

    M5

    M4

    M3

    M2

    M1

    M0

    代碼

    后續微址

    說明

    E/M

    IP

    MWR

    R/M

    o2

    o1

    O0

    OP

    M

    CN

    S2

    S2

    S0

    X2

    X1

    X0

    XP

    W

    ALU

    Iu

    IE

    IR

    Icz

    Ids

    0000

    1

    1

    1

    1

    1

    1

    1

    1

    FF

    1

    1

    1

    1

    1

    1

    1

    1

    FF

    1

    1

    1

    1

    1

    1

    1

    1

    FF

    +1

    ?

    0001

    1

    0

    1

    1

    1

    1

    1

    1

    BF

    1

    1

    1

    1

    1

    0

    1

    1

    FB

    1

    1

    1

    1

    1

    0

    0

    0

    F8

    +1

    ?

    0600

    1

    1

    1

    1

    1

    0

    1

    0

    FA

    1

    1

    1

    1

    1

    0

    0

    1

    F9

    1

    1

    0

    1

    1

    1

    1

    1

    DF

    +1

    SUB

    0601

    1

    1

    1

    1

    1

    0

    0

    0

    F8

    1

    1

    1

    1

    1

    0

    0

    1

    F9

    0

    0

    1

    1

    1

    1

    1

    1

    5F

    +1

    ?

    0602

    1

    1

    1

    1

    0

    0

    0

    0

    F0

    0

    1

    1

    0

    1

    1

    1

    0

    6E

    0

    1

    0

    0

    1

    1

    1

    1

    4F

    0001

    ?

    0620

    1

    1

    1

    1

    1

    0

    0

    0

    F8

    1

    1

    1

    1

    1

    0

    0

    1

    F9

    1

    1

    1

    1

    1

    1

    1

    1

    FF

    +1

    ADD

    0621

    1

    1

    1

    1

    1

    0

    1

    0

    FA

    1

    1

    1

    1

    1

    0

    0

    1

    F9

    0

    1

    1

    1

    1

    1

    1

    1

    7F

    +1

    ?

    0622

    1

    1

    1

    1

    0

    0

    0

    0

    F0

    0

    1

    1

    0

    0

    1

    1

    0

    66

    0

    1

    1

    0

    1

    1

    0

    1

    6D

    0001

    ?

    0640

    1

    1

    1

    1

    1

    0

    1

    0

    FA

    1

    1

    1

    1

    1

    0

    0

    1

    F9

    1

    1

    0

    1

    1

    1

    1

    1

    DF

    +1

    AND

    0641

    1

    1

    1

    1

    1

    0

    0

    0

    F8

    1

    1

    1

    1

    1

    0

    0

    1

    F9

    0

    1

    0

    1

    1

    1

    1

    1

    5F

    +1

    ?

    0642

    1

    1

    1

    1

    0

    0

    0

    0

    F0

    1

    1

    1

    0

    1

    1

    1

    0

    EE

    0

    1

    0

    0

    1

    1

    1

    1

    4F

    0001

    ?

    0660

    1

    1

    1

    1

    1

    0

    0

    0

    F8

    1

    1

    1

    1

    1

    0

    0

    1

    F9

    0

    1

    0

    1

    1

    1

    1

    1

    5F

    +1

    DEC

    0661

    1

    1

    1

    1

    0

    0

    0

    0

    F0

    1

    1

    0

    1

    0

    1

    1

    0

    D6

    0

    1

    0

    0

    1

    1

    0

    1

    4D

    0001

    ?

    0680

    1

    1

    1

    1

    1

    0

    0

    0

    F8

    1

    1

    1

    1

    1

    0

    0

    1

    F9

    0

    1

    0

    1

    1

    1

    1

    1

    5F

    +1

    CLR

    0681

    1

    1

    1

    1

    0

    0

    0

    0

    F0

    1

    1

    0

    1

    1

    1

    1

    0

    DE

    0

    1

    0

    0

    1

    1

    0

    1

    4D

    0001

    ?

    06A0

    1

    1

    1

    1

    1

    0

    0

    0

    F8

    1

    1

    1

    1

    1

    0

    0

    1

    F9

    0

    1

    0

    1

    1

    1

    1

    1

    5F

    +1

    RL

    06A1

    1

    1

    1

    1

    0

    0

    0

    0

    F0

    0

    1

    1

    1

    0

    1

    1

    0

    76

    0

    1

    0

    0

    1

    1

    0

    1

    4D

    0001

    ?

    06C0

    1

    1

    1

    1

    1

    0

    0

    0

    F8

    1

    1

    1

    1

    1

    0

    0

    1

    F9

    0

    1

    1

    1

    1

    1

    1

    1

    7F

    +1

    RR

    06C1

    1

    1

    1

    1

    0

    0

    0

    0

    F0

    0

    1

    0

    1

    1

    1

    1

    0

    5E

    0

    1

    1

    0

    1

    1

    0

    1

    6D

    0001

    ?

    06E0

    1

    1

    1

    1

    0

    0

    0

    0

    F0

    1

    1

    1

    1

    1

    0

    0

    1

    F9

    1

    1

    1

    0

    1

    1

    0

    1

    ED

    0001

    MOV

    0700

    1

    1

    1

    1

    0

    0

    0

    0

    F0

    1

    1

    1

    1

    1

    0

    1

    1

    FB

    1

    1

    0

    1

    1

    1

    1

    1

    DF

    +1

    LDI

    0701

    1

    0

    1

    1

    1

    1

    1

    1

    BF

    1

    1

    1

    1

    1

    1

    1

    1

    FF

    1

    1

    1

    0

    1

    1

    0

    1

    ED

    0001

    ?

    0720

    1

    1

    1

    1

    0

    1

    0

    1

    F5

    1

    1

    1

    1

    1

    0

    0

    1

    F9

    1

    1

    1

    0

    1

    1

    0

    1

    ED

    0001

    OUT

    0740

    1

    1

    1

    1

    1

    0

    0

    0

    F8

    1

    1

    1

    1

    1

    0

    1

    1

    FB

    1

    1

    0

    1

    1

    1

    1

    1

    DF

    +1

    LDA

    0741

    1

    0

    1

    1

    1

    0

    0

    1

    B9

    1

    1

    1

    1

    1

    0

    1

    1

    FB

    1

    1

    0

    1

    1

    1

    1

    1

    DF

    +1

    ?

    0742

    1

    0

    1

    1

    1

    1

    0

    0

    BC

    1

    1

    1

    1

    1

    1

    1

    0

    FE

    0

    0

    0

    1

    1

    1

    1

    1

    1F

    +1

    ?

    0743

    0

    1

    1

    1

    0

    0

    0

    0

    70

    1

    1

    1

    1

    1

    0

    1

    1

    FB

    1

    1

    1

    0

    1

    1

    0

    1

    ED

    0001

    ?

    0760

    1

    1

    1

    1

    1

    0

    1

    0

    FA

    1

    1

    1

    1

    1

    0

    1

    1

    FB

    1

    1

    0

    1

    1

    1

    1

    1

    DF

    +1

    STA

    0761

    1

    1

    1

    1

    1

    0

    1

    0

    BB

    1

    1

    1

    1

    1

    0

    1

    1

    FB

    1

    1

    0

    1

    1

    1

    1

    1

    DF

    +1

    ?

    0762

    1

    0

    1

    1

    1

    1

    0

    0

    BC

    1

    1

    0

    0

    0

    1

    1

    0

    C6

    0

    0

    0

    0

    1

    1

    1

    1

    0F

    0763

    ?

    0763

    0

    1

    0

    1

    1

    1

    1

    1

    5F

    1

    1

    1

    1

    1

    0

    0

    1

    F9

    1

    1

    1

    0

    1

    1

    0

    1

    ED

    0001

    ?

    0780

    1

    1

    1

    1

    1

    0

    1

    0

    FA

    1

    1

    1

    1

    1

    0

    1

    1

    FB

    1

    1

    1

    1

    1

    1

    1

    1

    FF

    +1

    JMP

    0781

    1

    1

    1

    1

    1

    0

    1

    0

    BB

    1

    1

    1

    1

    1

    0

    1

    1

    FB

    1

    1

    1

    1

    1

    1

    1

    1

    FF

    +1

    ?

    0782

    0

    0

    1

    1

    1

    1

    1

    1

    3F

    1

    1

    0

    0

    0

    1

    1

    0

    C6

    0

    0

    1

    0

    1

    1

    0

    1

    2D

    0001

    ?

    07A0

    1

    1

    1

    1

    1

    0

    1

    0

    FA

    1

    1

    1

    1

    1

    0

    1

    1

    FB

    1

    1

    1

    1

    1

    1

    1

    1

    FF

    +1

    JZ

    07A1

    1

    1

    1

    1

    1

    0

    1

    0

    BB

    1

    1

    1

    1

    1

    0

    1

    1

    FB

    1

    1

    1

    1

    1

    1

    1

    1

    FF

    +1

    ?

    07A2

    1

    0

    1

    1

    1

    1

    0

    0

    BC

    1

    1

    0

    0

    0

    1

    1

    0

    C6

    0

    0

    1

    1

    1

    1

    1

    1

    3F

    +1

    ?

    07A3

    1

    1

    1

    1

    1

    1

    1

    1

    FF

    1

    1

    0

    0

    0

    1

    1

    0

    C6

    1

    1

    1

    1

    1

    1

    0

    0

    FC

    07A4

    ?

    07A4

    1

    1

    1

    1

    1

    1

    1

    1

    FF

    1

    1

    1

    1

    1

    1

    1

    1

    FF

    1

    1

    1

    0

    1

    1

    0

    1

    ED

    0001

    ?

    07A5

    0

    0

    1

    1

    1

    1

    1

    1

    3F

    1

    1

    0

    0

    0

    1

    1

    0

    C6

    0

    0

    1

    0

    1

    1

    0

    1

    2D

    0001

    ?

    07C0

    1

    1

    1

    1

    1

    0

    1

    0

    FA

    1

    1

    1

    1

    1

    0

    1

    1

    FB

    1

    1

    1

    1

    1

    1

    1

    1

    FF

    +1

    JC

    07C1

    1

    1

    1

    1

    1

    0

    1

    0

    BB

    1

    1

    1

    1

    1

    0

    1

    1

    FB

    1

    1

    1

    1

    1

    1

    1

    1

    FF

    +1

    ?

    07C2

    1

    0

    1

    1

    1

    1

    0

    0

    BC

    1

    1

    0

    0

    0

    1

    1

    0

    C6

    0

    0

    1

    1

    1

    1

    0

    1

    3D

    07C4

    ?

    07C4

    1

    1

    1

    1

    1

    1

    1

    1

    FF

    1

    1

    1

    1

    1

    1

    1

    1

    FF

    1

    1

    1

    0

    1

    1

    0

    1

    ED

    0001

    ?

    07C5

    0

    0

    1

    1

    1

    1

    1

    1

    3F

    1

    1

    0

    0

    0

    1

    1

    0

    C6

    0

    0

    1

    0

    1

    1

    0

    1

    2D

    0001

    ?

    07E0

    1

    1

    1

    1

    1

    0

    0

    0

    F8

    1

    1

    1

    1

    1

    0

    0

    0

    F8

    0

    0

    1

    1

    1

    1

    1

    1

    3F

    +1

    HLT

    07E1

    0

    0

    1

    1

    1

    1

    1

    1

    3F

    1

    1

    0

    1

    0

    1

    1

    0

    D6

    0

    0

    1

    0

    1

    1

    0

    1

    2D

    0001

    ?

  • 列表說明檢測的機器指令程序,包括每個語句的地址、指令代碼、助記符(即匯編語句)、功能說明。
  • ;分段/RISC模型機指令系統

    ?

    ;助記符 操作數????????????? 指令碼 長度

    ;-----------------------------------------------------

    LDI???? R0,*??????????????? 80????? 2???????????? ;將指令中的立即數(第二字節)送入R0

    LDI???? R1,*??????????????? 84????? 2???????????? ;將指令中的立即數(第二字節)送入R0

    LDI???? R2,*??????????????? 88????? 2???????????? ;將指令中的立即數(第二字節)送入R2

    LDI???? R3,*??????????????? 8C????? 2???????????? ;將指令中的立即數(第二字節)送入R3

    STA???? *,R0??????????????? B0????? 3???????????? ;Rs(R0)→[M]

    STA???? *,R3??????? ????????B3????? 3???????????? ;Rs(R0)→[M]

    LDA???? R1,*??????????????? A4????? 3???????????? ;[M] →R1

    DEC???? R1????????????????? 34????? 1???????????? ;將R1值減1

    RL????? R0????????????????? 50????? 1???????????? ;R0循環左移一位

    SUB???? R0,R1?????????????? 01????? 1???????????? ;R0-R1→R1

    RR????? R0????????????????? 60????? 1???????????? ;R0循環右移一位

    ADD???? R0,R0?????????????? 10????? 1???????????? ;R0+R0→R0

    ADD???? R0,R1?????????????? 11????? 1???????????? ;R0+R1→R0

    ADD???? R1,R0?????????????? 14????? 1???????????? ;R0+R1→R1

    ADD???? R2,R3?????????????? 1B????? 1???????????? ;R2+R3→R2

    ADD???? R3,R2?????????????? 1E????? 1???????????? ;R2+R3→R3

    ADD???? R3,R1?????????????? 1D????? 1???????????? ;R1+R3→R3

    SUB???? R0,R0?????????????? 00????? 1???????????? ;R0-R0->R0

    AND??? ?R0,R1?????????????? 21????? 1????????????? ;Rd&Rs→Rd (R2和R0相與)

    AND???? R2,R0?????????????? 28????? 1????????????? ;Rd&Rs→Rd (R2和R0相與)

    MOV???? R3,R2?????????????? 7E????? 1???????????? ;R2→R3

    MOV???? R0,R1?????????????? 71????? 1???????????? ;R1→R0

    CLR??? ?R0????????????????? 40????? 1???????????? ;將R0清零

    OUT???? IOH,R0????????????? 90????? 1???????????? ;R0→I/O(數據開關)高字節

    OUT???? IOH,R1????????????? 91????? 1???????????? ;R1→I/O(數據開關)高字節

    OUT???? IOH,R2????????????? 92????? 1???????????? ;R1→I/O(數據開關)高字節

    OUT? ???IOH,R3????????????? 93????? 1???????????? ;R3→I/O(數據開關)高字節

    JMP???? *?????????????????? C0????? 3???????????? ;[M]->PC,即跳到M所指單元

    JZ????? *?????????????????? D0????? 3???????????? ;當Z=1時,跳轉到M所指單元

    JC????? *?????????????????? E0????? 3???????????? ;當CY=1時,跳轉到M所指單元

    HLT???? ""????????????????? F0????? 1???????????? ;停機

    ?

  • 運行檢測程序后的結果圖片。
  • Check.1程序跑完的結果:

    ?

    Check.2程序跑完的結果:

    ?

    9、存在的問題及體會

    ?

    計算機組成是計算機專業課程,對計算機組成的了解深入與否很大程度決定一個的程序員水平的高低。我對計算機組成原理這門課程是非常感興趣的。特別是計算機組成實驗課。課堂上的知識礙于時間限制,老師不可能面面俱到,而且對于新手來說,這門課程顯得生澀難懂,需要學生投入足夠的時間硬啃。老實說,上了一學期的課,我還是對很多知識感到陌生。在接下來的暑假,我打算自己再學一遍。這學期,感謝老師的循循善誘 誨人不倦。

    ?

    總結

    以上是生活随笔為你收集整理的计组课程设计的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。