中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 程序开发 > 编程语言 > 综合其它
汇编语言的小小总结
作者:未知 时间:2005-09-13 23:33 出处:Blog.ChinaUnix.net 责编:chinaitpower
              摘要:汇编语言的小小总结
过两天要汇编上机考了今天总结一点东西

关于寄存器:分为四类通用寄存器特殊目的寄存器段寄存器以及特殊目的的核心模式寄存器学校是安装8086/8088模式教的其实在三二位的操系统上段寄存器已经不太常用了
注意补码补码不可以对最小的负数再取负数表示范围是 -2^n~~~2^n -1,
指针究竟是怎么回事情,高级语言往往把指针的简单定义隐藏在抽象中,指针只是一个存贮单元她所存贮的值是另一个存贮单元的地址(或者索引)
函数参数传递:安值传递会产生一个副本也就是又复制了一份,在过程中无论做了什么都不会对值产生影响
引用传递传的是地址.数据规模小的时候按值快
数据规模大的时候引用快
call 语言首先将紧跟在call指令以后的地址压入栈顶然后将控制指针指向调用过程的地址
ret 指令从栈顶部弹出返回地址并将控制指针间接地指向这个地址
其实所谓的溢出程序也是从这个地方做文章的有机会大家再谈谈
一般不用esp而是用ebp来控制栈的工作
进口
push ebp
mov  ebp, esp
sub   esp,12
and  $ffff fffc ,esp (注意二进制情况下的这种技巧可以取余数又可以变成莫个数的倍数 取mod 8:and(%111,al))
出口
mov esp ebp
pop  ebp
ret()
暂时就这些了大家如果学好了汇编以后再回过头去看高级语言比如说c++会对高级语言有更深刻的了解的
我通过汇编学习对计算机系统有了更深刻更清晰的认识我觉得我学汇编的目的基本达到了欢迎大家和我讨论

关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有