386课堂练习16答案全Word下载.docx
《386课堂练习16答案全Word下载.docx》由会员分享,可在线阅读,更多相关《386课堂练习16答案全Word下载.docx(8页珍藏版)》请在冰豆网上搜索。
TR=0011001000001000
TI=0,TSS描述符在GDT中
索引=0011001000001
TSS描述符的起始地址=GDT的基地址+索引×
8
=00011000h+0011001000001×
8=00014208h
TSS描述符的地址范围(占8字节):
00014208h~0001420Fh
课堂练习3
请分析下面描述符:
30
00
D7
07
FF
①D7H=1101 0111
PDPLS EED W A
可写的堆栈段,DPL=2,在内存,访问过
②堆栈段基址=30000000H
界限=007FFH
课堂练习4分段管理
郁慧娣书P297图9.21访问代码段
问题:
1)GDTR=00A00000FFFFh
GDT的起始地址=?
GDT的结束地址=?
2)LDTR=2000h=0010000000000000b
LDT描述符的地址范围(占8字节):
?
3)LDT描述符:
00
82
90
FF
FF
6
4
2
LDT基址=?
,界限=?
4)CS=1005h=0001000000000101b
代码段描述符的地址范围(占8字节):
5)代码段描述符
0F
FA
60
代码段基址=?
分析属性:
补充:
6)假设EIP=00012000h,CR0的PG位=0(不分页)
则当前要取的指令在内存中的物理地址(起始的地址)=?
7)访问数据段,数据段描述符如下:
01
F2
20
00
FF
该数据段基址=?
界限=?
如果在代码段中执行下面一段程序(程序中访问的数据段描述符如上面所示)
MOVAX,8005H
MOVDS,AX
MOVEAX,55667788H
MOVEBX,00036000H
MOV[EBX],EAX;
基址寻址
如果CR0的PG位=0(不分页)
EAX中的数据要写入内存的物理地址范围(4B)=?
答案:
GDT的起始地址=00A00000h
GDT的结束地址=00A00000h+FFFFh=00A0FFFFh
TI=0,LDT描述符在GDT中,索引=0010000000000
LDT描述符的起始地址:
GDT起始地址+索引×
8=00A00000h+2000h=00A02000h
00A02000h~00A02007h
LDT基址=00900000h,界限=0FFFFh。
TI=1,代码段描述符在LDT中,索引=0001000000000
代码段描述符的起始地址:
LDT起始地址+索引×
8=00900000h+1000h=00901000h
00901000h~00901007h
代码段基址=00600000h,界限=0FFFFFh。
属性:
FAh=11111010b
代码段,可读,DPL=3,在内存中,未访问过。
则当前要取的指令在内存中的物理地址(起始的地址)
=代码段基址+偏移地址(EIP)
=00600000h+00012000h=00612000h
注:
如果CR0的PG位=1(分页),则上面求出的00612000h就不是物理地址,而是线性地址,需要进一步分页转换。
7)访问数据段:
该数据段基址=00200000h,界限=1FFFFh
F2h=11110010b
数据段,可写,DPL=3,在内存,未访问过。
MOVAX,1005H
EAX中的数据要写入内存的物理地址范围为(4B)
=数据段基址+偏移地址
=00200000h+00036000h=00236000h~00236003h
课堂练习5分页管理
已知在80386系统中,CR3=00100000H,页目录项和页表项内容如下图中所示,假设分段转换得到的线性地址为19990118H,请回答下面问题。
线性地址:
00011001100110010000000100011000B
页目录表页表页帧
1.页目录表起始地址=00100000H
2.页目录项的地址范围=00100198H~0010019BH
3.页表起始地址=00300000H
4.页表项的地址范围=00300640H~00300643H
5.页帧起始地址=80000000H
6.被访问操作数(32位)地址范围=80000118H~8000011BH
7.根据页目录项和页表项的内容,该操作数用户是否能访
问?
是是否可写?
否
386分段分页课堂练习6答案
80386工作在保护方式下,GDTR=002000001FFFH,LDTR=3009H,CS=1007H,EIP=00000800H。
1)GDT的起始地址为0020,0000H,结束地址为0020,1FFFH。
GDT的表长为8192。
2)LDT描述符的地址范围是0020,3008H到0020,300FH。
3)若代码段的描述符为:
FB
50
0F
则代码段的属性为:
特权级3,是否可读可,是否在内存是,是否访问过是。
代码段的长度为4K。
4)若80386仅分段,不分页,则当前执行指令的物理地址是500800H。
5)若80386既分段,又分页,则访问代码段时转换的线性地址为00500800H,
6)根据此线性地址进行分页转换,页目录描述符的偏移地址为
4,页表描述符的偏移地址为400H,被访问指令在页帧中的偏移地址为800H。