高级编程的硬件基础.pptxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机系统:由硬件和软件两部分组成 硬件体系结构:经典的冯?诺依曼体系结构 由三个子系统组成 处理器子系统 存储器子系统 输入/输出子系统;冯?诺依曼体系;处理器CPU子系统;存储器子系统 ;输入/输出子系统;80X86微机系统;Intel系列微处理器:80x86系列 8086、8088 80186、80286 80386、80486 Pentium、Pentium2 Pentium3、Pentium4等 ;8080处理器:16位微处理器,地址总线为20位,直接寻址能力为220=1048576=1024K=lM 80286、80386和80486处理器:寻址范围增大,例如80286可达16M,80386(80486)可达4G。 对低1M存储空间的寻址是为了和8088处理器兼容而设置的实地址方式,即DOS下的寻址方式。 80x86系列主存储器分为:低1M部分称为系统存储器,高于1M的部分称为扩展存储器和扩充存储器。 ;系统存储器:分为低地址部分(0~640K)和高地址部分(640K~1024K)两个部分。640K范围内的低地址部分又称为基本内存或常规内存 ,640K~1024K 部分称为高端内存。;高端内存:384K的高地址部分,供视频显示和BIOS等使用,分布情况如下图。;地址范围及功能: A0000到BFFFF:显示缓冲区,CGA显示缓冲区开始于B8000,VGA、EGA显示缓冲区开始于A0000。这些空间也称作视频存储器,简称VRAM。 C0000到DFFFF:ROM扩充区,主要存放视频显示器适配器和磁盘的BIOS,一些网络控制板、I/O接口板和扩充内存分页帧也要用到此部分地址。 E0000到EFFFF:保留区。 F0000到FFFFF:系统ROM,该部分装有系统引导程序,还有系统基本输入输出系统(BIOS)。 ;80x86微处理器:14个基本寄存器,用于进行运算,控制指令的执行,处理内存寻址等。 8088/80286微处理器的寄存器是16位长,在386、486中扩展为32位长(段寄存器除外)。 80386/80486增加了特殊的内部寄存器,Turbo C仅支持这14个基本寄存器,且长度认为是16位,即按照8088的14个内部寄存器来进行操作。;寄存器按其功能分类: 通用寄存器 地址指针寄存器 变址寄存器 段寄存器 指令指针寄存器 标志寄存器;AX、BX、CX、DX:16位数据寄存器,可分成高字节部分和低字节部分来使用。 高字节部分对应于AH、BH、CH、DH,低字节部分对应于AL、BL、CL、DL,即四个16位寄存器可看作八个8位寄存器。 AX:累加器,用于所有的输入/输出操作 BX:基址寄存器,用于扩展寻址,起变址作用 CX:计数寄存器,在循环操作中用作计数器 DX:数据寄存器,用于字乘法和除法,还用来提供输入输出操作中的口地址。;CS、DS、SS、ES:段寄存器,在实模式下的内存寻址是段左移4位+偏移,每个段最大寻址范围为64K字节,段的首地址保存在段寄存器中。 CS:代码段寄存器 DS:数据段寄存器 SS:堆栈段寄存器 ES:附加段寄存器;(1) 指针寄存器 SP寄存器:栈指针寄存器。在访问堆栈时,段地址在SS中,SP表示偏移地址。 BP寄存器:基址指针寄存器。通过堆栈传递数据地址时,段地址在SS中,BP存放要传递的数据地址的偏移地址。BP也可作为通用寄存器用。 (2) 变址寄存器 SI源变址寄存器:表示字串的源地址,段地址在DS DI目的变址寄存器:表示目的地址,它常和附加段寄存器ES相关联,表示目的地址偏移。;(3) IP指令指针寄存器 IP寄存器存放要执行的下条指令的偏移地址。 (4) 标志寄存器 l6位寄存器,其中6位作为指令执行结果的状态标志,3位用作控制标志。;存取存储器时,选择一个段寄存器的值作为该段的开始地址,将其左移4位,再加上偏移地址,得到20位物理地址,即存储器的真实地址。 ;I/O接口的寻址: 有两种方法: 一种是将接口地址和存储器地址统一编址; 一种是I/O接口地址和存储器地址分别独立编址。 80x86CPU采用I/O独立编址方式,采用专门的I/O指令来对接口地址进行操作。 ;Turbo C的内存模式 ;Turbo C的内存模式 ;Turbo C的内存模式 ;当一个程序较大时,可将一个程序分成几个部分,每个部分可单独成为一个源文件,这些文件通过全局变量或函数相联系。它们可进行单独编译,形成.OBJ文件。 可以采用两种方法将这些文件组合成一个完整的应用程序。 ;假设一个程序分成了A1.c和A2.c两个源文件 A2.c文件中定义了函数A2() : #include string.h void A2() { ... } ;A1.c中的main()函数调用A2()函数

文档评论(0)

xyz118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档