锻炼逻辑思维的题目地址的锻基值和偏移量

LINUX驱动研究(80)
物理地址是外部连接使用的、唯一的,它是“与地址总线相对应”;而逻辑地址是内部和编程使用的、并不唯一。&在内存中的实际地址就是所谓的“物理地址”,而逻辑地址就是逻辑段管理内存而形成的。&例如,你在进行C语言指针编程中,可以读取指针变量本身值(&操作),实际上这个值就是逻辑地址,它是相对于你当前进程数据段的地址(偏移地址),不和绝对物理地址相干。只有在Intel实模式下,逻辑地址才和物理地址相等(因为实模式没有分段或分页机制,Cpu不进行自动地址转换),逻辑地址也就是在Intel
保护模式下程序执行代码段限长内的偏移地址(假定代码段、数据段如果完全一样)。<span style="color:#86体系的CPU一开始是20根地址线, 寻址寄存器是16位, 16位的寄存器可以访问64K的地址空间, 如果程序要想访问大于64K的内存, 就要把内存分段, 每段64K, 用段地址&#43;偏移量的方法来访问&。386CPU出来之后, 采用了32条地址线,
地址寄存器也扩为32位, 这样就可以不用分段了, 直接用一个地址寄存器来线性访问4G的内存了. 这就叫平面模式.
将逻辑地址中的段地址左移4位,加上偏移地址就得到20位物理地址。这里左移的4位是二进制位;如果用十六进制表达地址就是左移一位。左移4位还可以表达为乘以16,即:段地址×16+偏移地址。&
同一个物理地址可以对应多个逻辑地址形式。所以物理地址转换为逻辑地址,需要明确段基地址或偏移地址,然后同上原则确定另一个地址。&
逻辑地址 1460H : 0100H 或1380H : 0900H&
物理地址 14700H&
于是,对于主存14700H单元,我们可以描述为在1460H(或1380H)段的0100H(或0900H)单元,或者说主存1460H : 0100H(或1380H : 0900H)单元。
的地址可以用段基&#20540;和段内来表示,段基&#20540;确定它所在的段居于整个存储空间的位置,偏移量确定它在段内的位置,这种地址表示方式称为逻辑地址。
&&&&&& 8086对外连接使用一个20位的线性地址唯一确定一个存储单元,也就是说:对于每个存储器单元都有的一个唯一的20位地址,我们称为该单元的物理地址或绝对地址。
&&&&&&&8086在内部结构中和程序设计时采用逻辑段管理内存,就形成了逻辑地址。它的表达形式为“段基地址&:&偏移地址”。
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:53204次
积分:1011
积分:1011
排名:千里之外
原创:23篇
转载:184篇
(11)(3)(3)(1)(46)(9)(13)(12)(39)(62)(7)(3)简述冯诺依曼计算机结构的基本含义电子计算机与以往..._中华文本库
第1页/共13页
1. 简述冯·诺依曼计算机结构的基本含义。电子计算机与以往的计算工具所不同的基 本特征是什么?
2. 电子计算机包括哪几个主要部分?各部分的基本功能是什么?
3. 微型计算机的主机包括哪几个主要部分?各部分的基本功能是什么?
4. 简述存储器的读/写过程。计算机如何区分内存储器中存放的指令和数据?
5. 运算器的基本功能是什么?它由哪几部分组成?各部分的作用是什么?
6. 控制器的基本功能是什么?它由哪几部分组成?各部分的作用是什么?
7. 何谓系统总线?系统总线分哪几组?各组总线的特点与作用是什么?
8. 某CPU的数据总线为16位,地址总线为24位,那么它的最大寻址空间(地址范围)是多少?经由数据总线传送的无符号数及带符号补码数的范围分别是多大?
9. 试解释下列名词术语:
(5) 存储器地址
(6) 时钟周期
(7) 机器周期
(8) 指令周期
(9) I/O接口
(10) I/O端口
10. 对于单总线结构CPU的计算机,请分别写出完成下列操作所需要发出的微命令信号,并说明该操作是否要占用机器周期。
(1) PC→MAR
(2) DBUS→MDR
(3) MDR→DBUS
(4) Y+R1→Z
11. 对于单总线结构CPU的计算机,请分别写出下列指令的执行过程(包括取指令的过程)。要求指出各个微操作步骤,需要哪几个机器周期,每个机器周期需要控制器发出哪些微命令信号。
其中,R、R1、R2均为通用寄存器,M为存储单元的地址,JMPA(PC)是相对转移指令,转移地址是当前的PC值加上数A。
1. 80386以上的微处理器通常有哪几种工作模式?各自的主要特点是什么?
2. 简要说明80x86/Pentium处理器编程结构中所包含寄存器的主要类型及寄存器名称。
CPU标志寄存器中有哪几个状态标志位和控制标志位?它们各自的功能是什么?
4. 为什么要将存储系统空间划分成许多逻辑段,分段后如何寻址要访问的存储单元?
5. 什么是物理地址?什么是逻辑地址?物理地址与逻辑地址有何联系?
6. 什么是段基值?什么是偏移量?如何根据段基值和偏移量计算存储单元的物理地址?
7. 在80x86实模式下,若(CS)=1200H,(IP)=0345H,则物理地址是什么?若(CS)=1110H,(IP)=1245H,则物理地址又是什么?
8. 某存储单元的物理地址为28AB0H,若偏移量为1000H,则段基值为多少?
9. 若80x86实模式下当前段寄存器的基值(CS)=2010H,(DS)=3010H,则对应的代码段及数据段在存储空间中物理地址的首址及末址是什么?
10. 设现行数据段位于存储器10000H~1FFFFH单元,则DS寄存器的内容应为多少?
11. 什么是堆栈?它有什么用途?堆栈指针的作用是什么?举例说明堆栈的操作。
12. 在80x86实模式系统中,堆栈的位置如何确立?由SS寄存器的值所指定地址的位置是不是栈底?为什么?
13. 某系统中已知当前(SS)=2100H,(SP)=080AH,说明该堆栈段在存储器中的物理地址范围。若在当前堆栈中存入10个字节数据后,那么SP的内容变为何值?
14. 已知当前数据段中存有如图6.12所示的字符串数据,现要求在该字符串之后添加两
第1页/共13页
寻找更多 ""此页面上的内容需要较新版本的 Adobe Flash Player。
您当前的位置:&>&
&&&&&&&&&&&&&&&&&
海安市职业教育中心& 丁雨
&&&&&&&&&&&&&&&
?(居∣WM ∣∣.DOC)
:&&&&&&& &&&&&&&&&&&&&&&&&&&&&&&&&&&
&&& 1&&& 2&&& 200748
B8000H=34H
MSB &&&&&&&&&&& LSB
&&& 01234H=1234H
01234H34H01235H12H
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&
& 2.5& & 2.6&
01234H78H0I235H56H01236H34H01237H12H2.6
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 2.7
B800H 1234H
B800H1234H
31MB2000000H~FFFFFH201616
&&& =&10H+
&&& 2.13021H25A1H
3&& 0&& 2&& 1
&&&&&&&&&&&&&&&& 0&&
2&& 5&& A&& 1
3&& 2&& 7&& B&& 1
302125A1327B1H
&&& 1&&& 2&&& 200748
D&&&& B&&&&&&&&&& H
123.45D123.45&&&&&&& 1011.11B&&&&&&&&&& 3BA.4H
123.45& &&1011.11&&&& 3BA.4H
&&& 342.54102, 101, 100, 10-110-21011.01B232221202-12-234A.7H16216116016-1
=Kn-1R n-1+Kn-2Rn-2 +&+K OR O+K-1R-1+&+K-m R-m
&&&&&&&&&& &N=Kn-12n-1+Kn-22n-2+&+KO20
&&&&&&&&&& &N=Kn-12+Kn-22+Kn-32+&+K12+K0
&&& 1.1101101
&&&& &&&1&&&&& 0 &&&&&1 &&&&&1&&&&& 0& &&&&&1=45
&&&&&&& 2&&&&& 4&&&&& 10 &&&&22&&&& 44
&&&&&&&& &N=K-12-1+K-22-2+...+K-m2-m
&&&&&&&&& N=2-1K-1+2-1K-2+...+2-1K-2+&+2-1(K-m+1+2-1 K-m
&&& 1.20.10111
1&&&&&&&& 0&&&&&&&&& 1&&&&&&&&& 1&&&&&&&& 1
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& &&&&&&&&&&&&&&&&+& 2
&&&&&&& 0.71875&& &&0.4375& &&&&0.875&& &&&0.75&&&&&& 0.5
&&& 1.40.8125
&&&&&&&&&&&& 0.8125 = 0.1101B
&&& 1.5.10101
&&& &&& 0111& 1011& &0101. &&1010& &1(100)
&&& &&&&& 7& &&&&B& &&&5& .&&&& A&&&&& 8
&&& .10101B = 7B5.A8H
&&& 1.69F.8
&&& &&&&& 9&&&&&&& F.&&&&& 8
&&& &&&&& 1001&&&& 1111 .&& 1000
&&& 9F.8H= B
+ 1001B01001B-1001B11001B
&&& 88163264128
&&& x=+x1x2...xn[x]=0x1x2...xn
&&&&&&&&& x=-x1x2...xn[x]=1x1x2&xn
&& &1.7x1=+1001010x2=-1001010
&&&&&&&&&&& [xl]=[x2]=
&&& Max[X]=[]=+ B=+127;
&&& Min[X]= []=-B =-127
&&& 8+ 127 ~-127
&&& x=+x1x2...xn[x]=0x1x2...xn
&&&&&&&&&&& x=-x1x2...xn[x]=1x1x2...xn
&&& 1.9x1=+1100111x2=-
&&& [x1]=[X2]=
&&& Max[X]=[]=+1111111B=+127
&&& Min[X]=[]=-1111111B=-127
&&& 8+127~-127
x=+x1x2...xn[x]=0x1x2...xn
&&&&&&&&&&&&& x=-x1x2...xn[x]=1x1x2...xn+1
&&& 1.11x1=+1001110x2=-1001110
&&& &[x1]=&& [x2]=
&&& Max[x]=[]=+1111111B=+127
&&& Min[x]=[]=-1000000B=-128
&&& 8+ 127~-128
&&& 81277FH1110233FFH
&&& 1.14x1 =+0000011B x2=-0000011B
&&& [x1]=[x1]+=[B]+B=[B]
&&& [x2]=[x2]+=[B]+B=[B]
& &&HTMLHTML
&& &&BODY&&BODY&BGCOLOR
&&& &P&ALIGNLEFTRIGHTCENTER
&&& &ADDRESS&
&&& &BLOCKQUOTE&
&&& &DIV&&SPAN&
&html&&head&&body&&p&&address&&pre&&div&&span&
无相关信息逻辑地址与物理地址
物理地址是外部连接使用的、唯一的,它是&与地址总线相对应&;而逻辑地址是内部和编程使用的、并不唯一。&在内存中的实际地址就是所谓的&物理地址&,而逻辑地址就是逻辑段管理内存而形成的。&例如,你在进行C语言指针编程中,可以读取指针变量本身值(&操作),实际上这个值就是逻辑地址,它是相对于你当前进程数据段的地址(偏移地址),不和绝对物理地址相干。只有在Intel实模式下,逻辑地址才和物理地址相等(因为实模式没有分段或分页机制,Cpu不进行自动地址转换),逻辑地址也就是在Intel 保护模式下程序执行代码段限长内的偏移地址(假定代码段、数据段如果完全一样)。8086体系的CPU一开始是20根地址线, 寻址寄存器是16位, 16位的寄存器可以访问64K的地址空间, 如果程序要想访问大于64K的内存, 就要把内存分段, 每段最大64K(寄存器为16位,所以最大寻址空间为2的16次方), 用段地址+偏移量的方法来访问&。386CPU出来之后, 采用了32条地址线, 地址寄存器也扩为32位, 这样就可以不用分段了, 直接用一个地址寄存器来线性访问4G的内存了. 这就叫平面模式.将逻辑地址中的段地址左移4位,加上偏移地址就得到20位物理地址。这里左移的4位是二进制位;如果用十六进制表达地址就是左移一位。左移4位还可以表达为乘以16,即:段地址&16+偏移地址。&同一个物理地址可以对应多个逻辑地址形式。所以物理地址转换为逻辑地址,需要明确段基地址或偏移地址,然后同上原则确定另一个地址。&逻辑地址 1460H : 0100H 或1380H : 0900H&物理地址 14700H&于是,对于主存14700H单元,我们可以描述为在1460H(或1380H)段的0100H(或0900H)单元,或者说主存1460H : 0100H(或1380H : 0900H)单元。
的地址可以用段基值和段内来表示,段基值确定它所在的段居于整个存储空间的位置...
分享这篇日志的人也喜欢
热门日志推荐
人人最热标签
分享这篇日志的人常去
北京千橡网景科技发展有限公司:
文网文[号··京公网安备号·甲测资字
文化部监督电子邮箱:wlwh@··
文明办网文明上网举报电话: 举报邮箱:&&&&&&&&&&&&
请输入手机号,完成注册
请输入验证码
密码必须由6-20个字符组成
下载人人客户端
品评校花校草,体验校园广场

我要回帖

更多关于 怎么锻炼逻辑思维能力 的文章

 

随机推荐