码迷,mamicode.com
首页 > 其他好文 > 详细

(1)计算机是如何工作的

时间:2015-03-07 19:54:03      阅读:101      评论:0      收藏:0      [点我收藏+]

标签:

 

存储程序计算机(The stored program computer)

  • 内存存储指令和数据
  • CPU解释指令

 

X86实现(X86 implementation)

 

Registers(寄存器)

  • 通用寄存器(General-Purpose Registers)
  • 段寄存器(Segment Registers)
  • 标志寄存器(EFLAGS Register)
  • X86_64寄存器(X86_64 Registers)

 

内存(Memory)

  •  movl %eax,%edx               edx = eax;                                  寄存器模式(register mode):以%开头的寄存器标识符
  •  movl $0x123,%edx           edx = 0x123;                                   立即数(immediate):
  •  movl 0x123,%edx            edx = *(int32_t*)0x123;                直接寻址(direct):直接访问一个指定的内存地址的数据
  •  movl (%ebx),%edx      edx = *(int32_t*)ebx;                    间接寻址(indirect):将寄存器的值作为一个内存地址来访问内存
  •  movl 4(%ebx),%edx     edx = *(int32_t*)(ebx + 4) ;      变址寻址(displaced):在间接寻址之时改变寄存器的数值   

  说明:movl表示32位指令,后面是等价的C代码   

 

(1)计算机是如何工作的

标签:

原文地址:http://www.cnblogs.com/slmsre/p/4320734.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!