首页
新闻
论坛
群组
Blog
文档
下载
读书
Tag
网摘
搜索
.NET
Java
游戏
视频
人才
外包
培训
数据库
书店
程序员
欢迎您:
游客
| 退出
| 登录
注册
帮助
我的帖子
我参与的帖子
我的空间
我的网摘
CSDN
CSDN社区
其他开发语言
汇编语言
将帖子提前
放进我的网摘
推荐给好友
我要提问
帖子加分
生成帖子
置顶
推荐(加精)
取消推荐(加精)
锁定帖子
移动帖子
取消引用
结贴去...
管理菜单
页面风格切换
标准风格
老版本论坛
请教
[已结贴,结贴人:browningblue]
加为好友
发送私信
在线聊天
browningblue
blue
等级:
可用分等级:
富农
总技术专家分:
10
总技术专家分排名:
211901
揭帖率:
100.00%
发表于:
2008-05-09 12:25:32
楼主
菜鸟提问,请各位帮忙:
sall $31, %eax
sarl $31, %eax
xor %ebx, %eax
这段代码含义.
多谢!
问题点数:
20
回复次数:
10
显示所有回复
显示星级回复
显示楼主回复
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
wesleyluo
wesley
等级:
可用分等级:
贫农
总技术专家分:
112
总技术专家分排名:
83064
发表于:
2008-05-09 13:21:40
1
楼 得分:
2
移位操作
先给出移位量,然后是待移位的对象。
可以进行算术和逻辑移位。
左移指令sall和shll的效果一样。
右移指令sarl执行算术移位(填符号位),而shrl执行逻辑移位(填0)。
XOR是異或運算。
剩下的自己想吧!!!
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
cnzdgs
回贴亦是善举
等级:
可用分等级:
乞丐
总技术专家分:
105613
总技术专家分排名:
45
5
2
13
发表于:
2008-05-09 13:31:27
2
楼 得分:
2
如果eax的最低位为0,则保持ebx的值不变,如果为1则将ebx取反。
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
jennyvenus
Snooper软硬件及配件
等级:
可用分等级:
富农
总技术专家分:
122953
总技术专家分排名:
33
3
5
5
发表于:
2008-05-09 15:19:12
3
楼 得分:
2
更详细一点就是
如果开始eax的最低位为0,那么eax为全0
如果开始eax的最低位为1,那么eax为全1
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
browningblue
blue
等级:
可用分等级:
富农
总技术专家分:
10
总技术专家分排名:
211901
发表于:
2008-05-09 15:31:15
4
楼 得分:
0
我的问题是:
sall $31, %eax
sarl $31, %eax
xor %eax, %ebx
对ebx中值会产生什么作用?
最好能有相应的C程序.
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
cnzdgs
回贴亦是善举
等级:
可用分等级:
乞丐
总技术专家分:
105613
总技术专家分排名:
45
5
2
13
发表于:
2008-05-09 17:19:56
5
楼 得分:
4
C/C++ code
int
eax;
int
ebx; eax
<<=
31
; eax
>>=
31
; ebx
^=
eax;
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
browningblue
blue
等级:
可用分等级:
富农
总技术专家分:
10
总技术专家分排名:
211901
发表于:
2008-05-10 21:00:02
6
楼 得分:
0
多谢你们的回答了,可能是我没有表达清楚.我不明白这段代码想表达的意义.每条汇编我知道.更确切来说,我不明白在什么情况下用这段代码.
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
jennyvenus
Snooper软硬件及配件
等级:
可用分等级:
富农
总技术专家分:
122953
总技术专家分排名:
33
3
5
5
发表于:
2008-05-10 21:27:57
7
楼 得分:
0
我不明白有了2楼的回复楼主还有什么不明白的。
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
browningblue
blue
等级:
可用分等级:
富农
总技术专家分:
10
总技术专家分排名:
211901
发表于:
2008-05-12 09:51:09
8
楼 得分:
0
比如:
mov $000000FF, %eax ;
and %eax, %ebx
这两条汇编组合的意思:取最低字节。
我的问题是:我不明白那三条汇编组合的意思。
不好意思,比较笨。
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
jennyvenus
Snooper软硬件及配件
等级:
可用分等级:
富农
总技术专家分:
122953
总技术专家分排名:
33
3
5
5
发表于:
2008-05-12 11:04:07
9
楼 得分:
10
if ( eax & 0x01 )
ebx ~= -1;
相当于这句话。
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
browningblue
blue
等级:
可用分等级:
富农
总技术专家分:
10
总技术专家分排名:
211901
发表于:
2008-05-12 11:52:19
10
楼 得分:
0
to jennyvenus :
有点明白, 不过我认为应:
if ( eax & 0x01 )
ebx ^= -1;
修改
删除
举报
引用
回复
将帖子提前
放进我的网摘
推荐给好友
我要提问
帖子加分
结贴去...
管理菜单
页面风格切换
标准风格
老版本论坛
网站简介
-
广告服务
-
网站地图
-
帮助
-
联系方式
-
诚聘英才
-
English
-
问题报告
北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
abc推荐给好友