作业|学习资料|样卷

计算机组成实践2018年秋期末模拟题题解

凝神长老 · 12月7日 · 2018年 · 6949次已读

你可以在这里下载到模拟题题面:

你可以在这里下载到我的指令系统和汇编代码:


INL RD,从 IO 单元的低 8 位获得数据,并存入通用寄存器 RD。

显然,这是一个 8 位的指令:

  • 第 1~3 位是我定义的指令码,不妨取 001
  • 第 4 位是 0
  • 第 5~6 位是 RS, 在这里取任意值,不妨取00
  • 第 7~8 位是 RD

0010XXRD

在设计指令的时候,0010 的散转地址是 640,因此,可以令INL RD这句指令的指令码是 20。

需要注意的是,INL R0INL R1INL R2INL R3的微指令必须不同,但是他们产生的微地址必须相同,这意味着,前 4 位必须是 0010,即 16 进制下的 2,而后 4 位必须不同,同时需要保证,最后 2 位用 00 表示 R0、01 表示 R1、10 表示 R2、11 表示 R3。

那么,指令就可以写成:

INL R0 20 1
INL R1 21 1
INL R2 22 1
INL R3 23 1

在微程序的设计中,源地址选择 IOR,目的地址选择 RWR。

这是单条微指令,所以执行后 PC 递增,且结尾变址。

关键是总线规则。

为了使得 DX 和 CX 都能作为目标寄存器,那 OP 必须为 0,同时,IO 单元是需要取出低字节,所以总线规则应该是偶字节送出,由于目标寄存器是由 RD 指定的,所以目标寄存器可以看作只有 8 位,所以送到高字节就好了。因此,总线规则是 010。

1543722136459

测试,结果正确,不管 RD 取值为何,都能得到正确的结果。

INH RD,从 IO 单元的高 8 位获得数据,并存入通用寄存器 RD。

类似的,区别只是需要注意总线规则是奇送奇。

0100RSXX

INH R0 40 1
INH R1 41 1
INH R2 42 1
INH R3 43 1

1543722312250

OUTL RS,将通过寄存器 RS 的数据送出到 IO 单元的低 8 位。

0110RSXX

类似,需要注意 RS 的取值,即后 4 位为 0000、0100、1000、1100。

OUTL R0 60 1
OUTL R1 64 1
OUTL R2 68 1
OUTL R3 6C 1

1543725621381

SWITCH RD,将 RD 中高 4 位和低 4 位的值交换,并存回 RD。

例如,原来的数值为 0xA3,则交换后为 0x3A。

如果是高 8 位和低 8 位交换,那就相对简单,只要 R0->TMP、R1->R0、TMP->R1 即可。

现在是 4 位,最先想到的是位运算,但是位运算显然不合要求,首先就没有办法把需要进行位运算的掩码值存进去。

可以用循环位移。

例如原来是 1234,希望变成 1243,那么可以首先将 RD 的低 8 位复制到 AX 的低 8 位、将 RD 的低 8 位复制到 AX 的高 8 位,此时 AX 为 3434,只要通过循环左移得到 4343 即可。

于是,循环左移 4 次。

得到 ALU 的运算结果以后,将 ALU 的低 8 位赋值给 RD 的低 8 位即可。

总线规则取偶送奇。

1543726256204

JMPL RS,跳转到寄存器 RS 中值所指向的地址执行机器指令。

只考虑实现这个指令,是非常简单的,甚至比之前的JMP *更简单,因为只要令 RS 寄存器的值覆盖掉 PC 的值即可。

但是并不是简单地令源地址为 RRD、目的地址为 PC。需要注意的是只能把 REG 的低字节赋值给 PC 的低字节,且需要将 PC 的高字节置为 00。

1543726503185

如图便是错误的示例。

可以考虑先把 REG 的低字节丢到 BX 中,然后 B->PC。

1543726689418

1543726701510

现在的问题是怎么实现汇编程序。

data    segment         ;将程序装载到数据存储器
        assume ds:data

        org   0
start:
        INH R3
        INL R0
        INH R1
        SWITCH R0
        OUTL R0
        JMPL R3
data    ends
        end   start

由于题目说,不能预先给内存区域赋值,但是不包括寄存器,所以可以令 R3 的值为 JMPL 到的地址,显然,循环的部分是从 SWITCH 到 JMPL,所以可以令 R3 的初值为 03。

注意到,IN 的操作已经不影响整个循环的流程,所以可以令 R3 的初值为 01。

特别的,如果 INH 的高位为 00,那么,R3 就可以不用设置,每次 JMP 到 RS 的高位即可。

INL R0 20 1
INL R1 21 1
INL R2 22 1
INL R3 23 1
INH R0 40 1
INH R1 41 1
INH R2 42 1
INH R3 43 1
OUTL R0 60 1
OUTL R1 64 1
OUTL R2 68 1
OUTL R3 6C 1
SWITCH R0 80 1
SWITCH R1 85 1
SWITCH R2 8A 1
SWITCH R3 8F 1
JMPL R0 A0 1
JMPL R1 A4 1
JMPL R2 A8 1
JMPL R3 AC 1

流程图如下:

1543851131785

0 0 投票
Article Rating
订阅评论动态
提醒
guest
163 评论
最新
最旧 得票最多
行内反馈
查看所有评论
YaK
YaK QQ浏览器 10.5.3751.400 Windows 10
2019年12月26日 19:08

下载的代码中没有微地址为0741的微指令,我补了一下发现只有在字传递的时候PC的前两位才是0(设CX为1234,则PC为0034,不是字传递时PC为3434),不知道是不是正常现象,感觉用奇偶传递应该也能实现的样子。

mmm
mmm Chrome 70.0.3538.110 Windows 10
2018年12月26日 20:38

请问不用在流程图里说明PC+1吗?

123123
123123 Chrome 80.0.3987.149 Windows 10
2020年06月27日 16:23

先在暑假看看实验

qqq
qqq Firefox 74.0 Windows 10
2020年03月22日 10:04

666

ssh
ssh QQ浏览器 10.4.3505.400 Windows 10
2019年12月27日 08:30

66

Tom
Tom Chrome 79.0.3945.88 Windows 10
2019年12月27日 05:59

!?

12
12 Chrome 69.0.3947.100 Windows 10
2019年12月26日 23:15

感谢

wenjielcr
wenjielcr Chrome 69.0.3947.100 Windows 10
2019年12月26日 22:58

666

2313
2313 Chrome 79.0.3945.88 Windows 10
2019年12月26日 22:55

123

cn
cn Chrome 79.0.3945.88 Windows 10
2019年12月26日 22:53

tql

wanna
wanna 搜狗浏览器 2.X Windows 10
2019年12月26日 22:28

tql

楼主太强了
楼主太强了 Firefox 71.0 Windows 10
2019年12月26日 22:25

ding!

1
1 Chrome 79.0.3945.88 Windows 10
2019年12月26日 22:22

1

大侠
大侠 Chrome 78.0.3904.108 Windows 10
2019年12月26日 22:16

mb
mb QQ浏览器 10.5.3863.400 Windows 10
2019年12月26日 22:06

Saimi
Saimi Chrome 79.0.3945.88 Windows 10
2019年12月26日 21:52

nb

Ward114
Ward114 搜狗浏览器 2.X Windows 10
2019年12月26日 21:36

%%%

build
build Chrome 79.0.3945.88 Windows 10
2019年12月26日 21:25

%%%

666
666 Chrome 63.0.3239.132 Windows 10
2019年12月26日 21:09

666

msw
msw Chrome 79.0.3945.88 Windows 10
2019年12月26日 21:00

感谢

eke
eke Firefox 71.0 Windows 10
2019年12月26日 20:26

谢谢你!

ClimaxYu
ClimaxYu Edge 18.18362 Windows 10
2019年12月26日 19:54

.

xxxl
xxxl Chrome 79.0.3945.79 Windows 10
2019年12月26日 19:18

很有用,谢谢

jacob
jacob Chrome 79.0.3945.88 Windows 10
2019年12月26日 19:14

tql
tql Chrome 79.0.3945.88 Windows 10
2019年12月26日 19:12

tql

qnwzq
qnwzq Firefox 70.0 Windows 10
2019年12月26日 18:42

qdwzq

kpp
kpp Chrome 79.0.3945.88 Windows 10
2019年12月26日 18:41

tpl

qdwnb
qdwnb Chrome 79.0.3945.88 Windows 10
2019年12月26日 17:01

6666666

qq
qq Firefox 69.0 Windows 10
2019年12月26日 16:35

666

miss
miss Edge 18.18362 Windows 10
2019年12月26日 14:49

大佬tql

YaK
YaK QQ浏览器 10.5.3751.400 Windows 10
2019年12月26日 14:47

Edgarei
Edgarei Chrome 79.0.3945.88 Windows 10
2019年12月26日 14:11

大佬tql

loveBilly
loveBilly Firefox 71.0 Windows 10
2019年12月26日 14:00

感谢分享

aa
aa Edge 18.18362 Windows 10
2019年12月26日 13:24

666

_
_ Chrome 79.0.3945.88 Windows 10
2019年12月26日 13:08

tql

7675
7675 Opera 12.14 Windows Vista
2019年12月26日 10:16

niub

ff
ff Firefox 71.0 Windows 10
2019年12月26日 10:04

qqqqqqqqqqqqq

hi
hi Chrome 79.0.3945.88 Windows 10
2019年12月26日 00:04

zrs
zrs Edge 18.17763 Windows 10
2019年12月25日 23:49

tql

张乐凡的爹
张乐凡的爹 Chrome 69.0.3947.100 Windows 10
2019年12月25日 22:54

123

mmnmn
mmnmn Chrome 79.0.3945.88 Windows 10
2019年12月25日 22:19

666

ADB
ADB Edge 18.18362 Windows 10
2019年12月25日 21:43

!

LMJ@ECNU
LMJ@ECNU Chrome 72.0.3626.121 Windows 10
2019年12月25日 21:33

tql

555
555 Chrome 73.0.3683.86 Windows 10
2019年12月25日 20:25

%

qwert
qwert Safari 605.1.15 Mac OS X 10_15_2
2019年12月25日 19:20

の3
の3 Edge 17.17134 Windows 10
2019年12月25日 18:15

32

dd
dd Opera 12.14 Windows Vista
2019年12月25日 18:00

666

zxx
zxx Edge 18.18362 Windows 10
2019年12月25日 17:45

nb

lhc
lhc Chrome 79.0.3945.88 Mac OS X 10_15_2
2019年12月25日 17:15

nbnbnbnb

koko
koko Chrome 79.0.3945.88 Windows 10
2019年12月25日 17:12

1

yu
yu Chrome 78.0.3904.108 Windows 10
2019年12月25日 16:58

tql

大撒大撒
大撒大撒 Chrome 79.0.3945.88 Windows 10
2019年12月25日 16:34

tql

哈哈哈
哈哈哈 Firefox 71.0 Windows 10
2019年12月25日 11:22

学长太厉害了

KATE
KATE Chrome 79.0.3945.88 Windows 10
2019年12月25日 05:09

感谢

dwww
dwww Chrome 79.0.3945.88 Windows 10
2019年12月25日 00:08

tql

1
1 Firefox 71.0 Windows 10
2019年12月24日 23:57

1

wzq
wzq Chrome 79.0.3945.88 Windows 10
2019年12月24日 20:35

hai
hai Chrome 79.0.3945.88 Windows 10
2019年12月24日 19:53

tql

ma
ma QQ 8.2.0.4310 Android 9 | HUAWEI RVL-AL09
2019年12月24日 13:47

tql

lll
lll Chrome 78.0.3904.70 Windows 10
2019年12月23日 22:12

tql

hhh
hhh Chrome 79.0.3945.88 Windows 10
2019年12月23日 22:01

膜拜

111
111 Chrome 72.0.3626.121 Windows 10
2019年12月22日 22:29

tql

xuezha
xuezha Firefox 70.0 Ubuntu Linux
2019年12月22日 00:47

1111

zzx
zzx Chrome 79.0.3945.88 Windows 10
2019年12月21日 21:06

tql

www
www Firefox 71.0 Windows 10
2019年12月21日 18:55

佩服

1
1 Edge 18.18362 Windows 10
2019年12月20日 21:07

tql

ILoveChina
ILoveChina Chrome 79.0.3945.88 Windows 10
2019年12月20日 20:28

zzw:学弟学妹们,勇夺第二吧!

ILoveChina
ILoveChina Chrome 79.0.3945.88 Windows 10
回复  凝神长老
2019年12月21日 18:36

好的,谢谢学长

tql
tql Chrome 79.0.3945.79 Mac OS X 10_14_6
2019年12月20日 12:00

tql

qq
qq 未知浏览器 未知操作系统
2019年12月20日 11:31

666

why
why Safari 605.1.15 Mac OS X 10_15_1
2019年12月20日 11:07

tql

asdfa
asdfa Chrome 79.0.3945.79 Windows 10
2019年12月20日 11:05

tql

zzjs
zzjs Edge 18.18362 Windows 10
2019年12月20日 10:52

tql

lyh
lyh Chrome 79.0.3945.88 Mac OS X 10_14_6
2019年12月20日 10:43

tql

llllllllj
llllllllj Firefox 71.0 Windows 10
2019年12月20日 10:25

好人一生平安!~

zrs
zrs Chrome 79.0.3945.88 Windows 10
2019年12月20日 10:21

tql

sadsadsadsad
sadsadsadsad Chrome 78.0.3904.108 Windows 10
2019年12月20日 10:17

asdsa

zzx
zzx Chrome 79.0.3945.79 Windows 10
2019年12月20日 10:15

geili

憨憨
憨憨 Chrome 76.0.3809.100 Windows 10
2019年12月20日 10:13

大家好

caiji
caiji Chrome 78.0.3904.108 Windows 10
2019年12月20日 10:01

🙂

hahaha
hahaha Chrome 79.0.3945.79 Windows 10
2019年12月20日 09:25

666

xzx
xzx 未知浏览器 未知操作系统
2019年12月20日 02:09

Thx thx thx

xzx
xzx 未知浏览器 未知操作系统
2019年12月20日 02:08

Tql thx

555
555 Edge 18.18362 Windows 10
2019年12月19日 23:16

6

tql
tql Chrome 78.0.3904.108 Windows 10
2019年12月19日 20:54

tql前辈

dffd
dffd Edge 79.0.309.54 Windows 10
2019年12月19日 19:55

tql!!!!

www
www Chrome 78.0.3904.108 Windows 10
2019年12月19日 17:03

666TQL

tql
tql Chrome 79.0.3945.79 Windows 10
2019年12月18日 22:55

tql

tql
tql Firefox 71.0 Windows 10
2019年12月17日 23:31

qiangqiangqiang

2asdasd
2asdasd Chrome 73.0.3683.103 Windows 10
2019年12月16日 19:44

666

gg
gg Chrome 77.0.3865.120 Windows 10
2019年12月13日 11:42

1

sxc
sxc Firefox 70.0 Windows 10
2019年12月13日 11:03

1111

543
543 Firefox 71.0 Windows 10
2019年12月13日 10:56

3r

7536753
7536753 Chrome 76.0.3809.132 Windows 10
2019年12月13日 10:51

000

@albert
@albert Firefox 71.0 Windows 10
2019年12月13日 10:49

1

lcatastrophe
lcatastrophe Edge 18.17763 Windows 10
2019年12月13日 10:41

打卡

zrsssb
zrsssb Edge 18.18362 Windows 10
2019年12月13日 10:31

tql

lcatastrophe
lcatastrophe Edge 18.17763 Windows 10
2019年12月13日 10:27

太强辣

xbatql
xbatql Chrome 78.0.3904.108 Windows 10
2019年12月13日 10:24

tql

zxx
zxx Chrome 78.0.3904.108 Windows 10
2019年12月13日 10:21

dalao

zxx
zxx Chrome 78.0.3904.108 Windows 10
2019年12月13日 10:21

ttttttql

j
j Chrome 78.0.3904.108 Windows 10
2019年12月13日 10:18

东方4发

232323
232323 Chrome 78.0.3904.108 Windows 10
2019年12月13日 10:05

tqll

dw
dw Firefox 71.0 Windows 10
2019年12月13日 09:38

tql

czc
czc Chrome 78.0.3904.108 Windows 10
2019年12月12日 20:22

tql

aix
aix Chrome 78.0.3904.108 Windows 10
2019年12月11日 00:29

thx

1
1 Chrome 78.0.3904.108 Windows 10
2019年12月06日 11:56

1

Aniee
Aniee Firefox 70.0 Windows 10
2019年12月06日 10:39

dd

lyj
lyj Chrome 78.0.3904.108 Windows 10
2019年12月06日 10:36

tql

辣鸡
辣鸡 Firefox 70.0 Windows 10
2019年12月06日 10:27

%%%

666
666 Chrome 78.0.3904.108 Windows 10
2019年12月06日 10:18

6666666666666

hy
hy Chrome 78.0.3904.87 Windows 10
2019年12月06日 08:38

tql

tql
tql Edge 18.17763 Windows 10
2019年12月05日 23:57

tql

browu
browu Chrome 78.0.3904.21 Windows 10
2019年11月30日 13:45

tql

nn
nn 未知浏览器 未知操作系统
2019年11月29日 10:24

np

ILoveChina
ILoveChina Chrome 78.0.3904.108 Windows 10
2019年11月26日 11:30

能下载么

griv
griv Chrome 78.0.3904.108 Windows 10
2019年11月23日 15:46

不过为什么下载不了啊

griv
griv Chrome 78.0.3904.108 Windows 10
2019年11月23日 15:41

不过,为什么下载不了啊

griv
griv Chrome 78.0.3904.97 Windows 10
2019年11月23日 11:46

感谢

csl
csl Firefox 70.0 Windows 10
2019年11月22日 10:38

模拟题体面的pdf好像挂了

griv
griv Chrome 78.0.3904.108 Windows 10
回复  凝神长老
2019年11月23日 15:54

好像还是下载不了啊

csl
csl Firefox 70.0 Windows 10
2019年11月22日 10:35

你好我是蔡盛梁,我愿称你为最强

zzwtql
zzwtql Chrome 66.0.3359.181 Windows 10
2019年11月22日 10:19

aix
aix Chrome 78.0.3904.97 Windows 10
2019年11月09日 20:40

tql

yyy
yyy Chrome 74.0.3729.131 Windows 10
2019年11月08日 11:14

thx

zxxxxxx
zxxxxxx Chrome 77.0.3865.120 Windows 10
2019年11月08日 11:08

loveBilly
loveBilly Firefox 69.0 Windows 10
2019年10月06日 16:24

%

lhc
lhc Chrome 75.0.3770.142 Mac OS X 10_14_6
2019年09月06日 09:40

太强了

哈哈哈
哈哈哈 Firefox 66.0 Windows 10
2019年04月17日 15:16

zzwtql

beautifulsoup
beautifulsoup Chrome 73.0.3683.86 Windows 10
2019年03月28日 15:32

tql

wow
wow Firefox 64.0 Windows 10
2018年12月28日 02:10

tqltql!

黑暗风暴
黑暗风暴 Firefox 64.0 Windows 7
2018年12月27日 23:54

牛逼牛逼

gieooll
gieooll Chrome 71.0.3578.98 Windows 10
2018年12月27日 22:51

感谢

莫忘
莫忘 Chrome 68.0.3440.7 Windows 10
2018年12月27日 22:44

mo大佬

?
? Chrome 71.0.3578.98 Windows 10
2018年12月27日 22:36

o98k

雾雨魔沙理
雾雨魔沙理 Chrome 67.0.3396.62 Windows 10
2018年12月27日 22:32

谢谢大哥

qwd
qwd Chrome 71.0.3578.98 Windows 10
2018年12月27日 22:21

zerozone
zerozone Chrome 71.0.3578.98 Windows 10
2018年12月27日 22:14

zzwtql

11
11 未知浏览器 未知操作系统
2018年12月27日 21:20

666

66666
66666 Firefox 64.0 Windows 10
2018年12月27日 21:04

2333

章金莱
章金莱 Chrome 71.0.3578.98 Windows 10
2018年12月27日 19:30

写的很好,汇编+微指令两开花

Qiaomu_www
Qiaomu_www Chrome 60.0.3112.113 Windows 10
2018年12月26日 20:42

膜!

L
L Chrome 69.0.3497.92 Windows 10
2018年12月26日 17:54

感谢!

ltg
ltg Chrome 63.0.3239.132 Windows 10
2018年12月24日 10:26

tk

dddduty
dddduty Chrome 71.0.3578.98 Windows 10
2018年12月23日 22:06

666

yyy
yyy Chrome 69.0.3497.100 Windows 10
2018年12月23日 19:03

感谢!

xcj
xcj Chrome 65.0.3325.181 Windows 10
2018年12月22日 15:55

tql tql!!

dragon
dragon Firefox 64.0 Windows 10
2018年12月22日 15:25

666666

gsregf
gsregf Chrome 67.0.3396.79 Windows 10
2018年12月21日 11:00

we

ls
ls Chrome 71.0.3578.98 Windows 10
2018年12月20日 21:47

感谢

cyh
cyh Chrome 69.0.3497.92 Windows 8.1
2018年12月20日 16:09

学到了

6324
6324 QQ浏览器 10.3.2727.400 Windows 10
2018年12月18日 22:44

66666666666

xcv
xcv Chrome 71.0.3578.98 Windows 10
2018年12月18日 21:02

感谢!

Robin
Robin Chrome 69.0.3497.100 Windows 10
2018年12月13日 19:57

zzw tql

tql
tql Chrome 70.0.3538.110 Windows 10
2018年12月10日 19:57

66

IllusionBot
IllusionBot Chrome 70.0.3538.110 Mac OS X 10_14_1
2018年12月08日 12:45

感谢