| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4970 人关注过本帖
标题:跳转命令和testl命令是如何和标志位配合工作的啊?
只看楼主 加入收藏
wtyj112
Rank: 1
等 级:新手上路
帖 子:222
专家分:0
注 册:2007-5-9
结帖率:85.71%
收藏
 问题点数:0 回复次数:3 
跳转命令和testl命令是如何和标志位配合工作的啊?
我老是有点模糊对标志位
 比如说 testl 语句具体是怎么工作?
 在看一些c代码的判断语句的时候 一般条件判断语句 if (count) 的汇编码会写成 testl %ebx, %ebx 。ebx中 放着count
向知道它是怎么工作的?谁能帮我解释下吗?  
搜索更多相关主题的帖子: testl 命令 
2010-05-04 21:10
ONEPROBLEM
Rank: 6Rank: 6
来 自:广西 南宁
等 级:贵宾
威 望:21
帖 子:1569
专家分:349
注 册:2008-7-11
收藏
得分:0 
TEST指令只修改标志位,并不返回运算的结果,即参考运算的数值不变。
TESTL %EBX,%EBX中,当EBX为真时,返回真;当EBX为假时,返回假。而EBX还会保持它的原值。
2010-05-05 08:17
wtyj112
Rank: 1
等 级:新手上路
帖 子:222
专家分:0
注 册:2007-5-9
收藏
得分:0 
我在看深入理解计算机系统 randal e.bryant & david o'hallaron著
该书中对test指令有这么一段话。
test指令会根据它们的两个操作数的与(and)来设置零标志和负数标志。
这句话让我纠结 我老想例如testl %edx, %edx 用与操作来看怎么会影响到标志位?
标志位是怎样被影响的?

计算机之路是痛苦并快乐着的!!
2010-05-05 09:09
ONEPROBLEM
Rank: 6Rank: 6
来 自:广西 南宁
等 级:贵宾
威 望:21
帖 子:1569
专家分:349
注 册:2008-7-11
收藏
得分:0 
回复 3楼 wtyj112
标志位是怎样被影响的?
;------------------------
你的这个问题太深奥了!至于怎么被影响,看来要了解到CPU内部的各个寄存器之间是怎样协调工作的了.
标志位一般在一个叫做"标志寄存器"中,用来记录CPU的各种运算结果,以备它用.实在是深入CPU后才弄明白的了.
2010-05-05 16:04
快速回复:跳转命令和testl命令是如何和标志位配合工作的啊?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013013 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved