. : : Assembly Language : : .
|
首页
|
我提出的问题
|
我参与的问题
|
我的收藏
|
消息中心
|
游客 登录
|
提问
|
未解决
|
已解决
|
精华区
|
搜索
|
《汇编语言》论坛
->
自由讨论区
主题 : :
FF的补码是多少?
[已解决]
回复[
6
次 ] 点击[
1185
次 ]
hygf99
[帖 主]
[ 发表时间:2010-02-28 23:29 ]
荣誉值:0
信誉值:4
注册日期:2009-10-17 21:41
学了这么多天汇编了,竟然连这个问题都不会,真是汗颜啊。。
正数的补码是他本身,那么,就应该是11111111B了,但是第一位为符号位,1代表负。
该怎么算呢?
scuzg
[第
1
楼]
[ 回复时间:2010-03-01 09:50 ]
荣誉值:307
信誉值:0
注册日期:2009-03-15 23:46
正如楼主所说,0FFH的最高为为1,所以不应该是个正数而是负数;
如果将0FFH看作是原码,那么就应该是负7FH,即-127,按照求补规则(逐位取反、末位加1):
-111 1111的补码是1000 0001。
如果将其与正127,即 0111 1111相加:
0111 1111
+1000 0001
——————
10000 0000
低8位的结果为0,这正是127+(-127)的正确结果;而向8位之外的进位,正是补码运算的“去模”。
此问题已结贴!
Copyright © 2006-2024 ASMEDU.NET All Rights Reserved