找回密码
 注册
查看: 1671|回复: 8
打印 上一主题 下一主题

一个关于无符号数和有符号数的问题,各路大神,有时间进来看看

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2014-3-7 23:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
r e g [0:5] B a r;
3 y/ B. k7 _! Y* k8 U. ~, ?i n t e g e r T a b;
- p) y" e  x$ c6 zB a r = - 4'd12/4;
* r8 U' H1 y. d/ R$ QT a b = - 4'd12 /4;
3 k$ D* O* ?% }; ~, y请教大家一个问题: v- v6 |4 M. G- c
最终bar和tab的值是多少?2 Q8 N: m* |! B, l, q% d( W
Bar定义为寄存器变量,默认的是无符号型,tab定义整型,默认32位无符号型。
9 E2 c" D0 x4 w5 {( j书上说bar的最终结果是:61,tab的最终结果是:1073741821" `6 S3 v; @: t) L4 Y9 e

( ~( Q, b. |6 K但是我总觉得bar的最终结果是13  (001101)6 V6 I# J) E% V$ m0 Q
7 U) z5 R& ~4 V# `: x- {
请教大家,应该到底是多少呢?

该用户从未签到

2#
发表于 2014-3-7 23:50 | 只看该作者
本帖最后由 zgq800712 于 2014-3-7 23:54 编辑
7 o+ Z  q8 A+ d" k* d- r% @- b# }& X2 x8 @2 [
Bar 是6位的,Bar=-4‘d12/4 ,那就是-3,
" o# p7 ~) R* \
! ^, \/ Y6 s7 g0 _3 }最高位是符号位& G4 E# O1 ]0 _" ?
10,0011 --- 原码1 `% a. W# |% c  J5 o: j$ F& p
11,1100  ----- 反码
# h; T. k- V/ z& s8 Z5 ^5 l$ k11,1101 ------ 补码
8 G5 @1 O1 O4 `) M' L0 @+ l& X* b, V# n4 }0 p$ g( e. v
负数就是按补码来的;11,1101 是多少? 就是619 T5 l& i5 l0 w! W
0 b- J7 |( k* p' o0 s
另外一个算的不对,我算不出来
9 y) A* J& a- H/ `: P1 c, ]: q0 a4 `1 K' [( U# C2 M1 B3 c/ A

该用户从未签到

3#
 楼主| 发表于 2014-3-8 17:33 | 只看该作者
zgq800712 发表于 2014-3-7 23:509 {, F/ M" J0 R4 g3 L# h, r
Bar 是6位的,Bar=-4‘d12/4 ,那就是-3,/ H8 f& g" Y* Z* Z* L3 ~6 B

- C3 W) V- M; _! ?" y* ^7 }" E: V最高位是符号位
1 w$ ]  x7 }6 l5 f" h
另外一个也是先算的补码,因为tab是整形变量,默认32位,所以- 4'd12要先转化为32位的补码为FFFF_FFF4再进行计算,因为基数形式默认的是无符号型,所以便是:FFFF_FFF4/4=3FFF_FFFD它的十进制数就是:1073741821。这个数就是这么来的。所以我Bar的结果我总感觉不对,觉得应该是先将- 4'd12转化为6位的二进制补码110100=52,然后再除以4,结果得到的应该是13.

该用户从未签到

4#
发表于 2014-3-10 10:59 | 只看该作者
"/"的优先级高于“-”,第二个结果是不对的。

该用户从未签到

5#
 楼主| 发表于 2014-3-14 23:41 | 只看该作者
lvsy 发表于 2014-3-10 10:59) Q: n& B* v! r  G, q
"/"的优先级高于“-”,第二个结果是不对的。
- {+ S; Z/ I9 ]) L2 b; J% d9 E
这么说的话,tab的值应该是-3喽?书上的那个结果是错误的?

该用户从未签到

6#
发表于 2014-3-17 08:35 | 只看该作者
pipiliang 发表于 2014-3-14 23:41
9 F4 a! c5 p+ K  K9 U+ O' ]) e0 E$ R这么说的话,tab的值应该是-3喽?书上的那个结果是错误的?

) |- K' ?! m8 e2 ^$ ~0 q6 z对,应该是-3。

该用户从未签到

7#
 楼主| 发表于 2014-3-26 20:44 | 只看该作者
lvsy 发表于 2014-3-17 08:352 r" D5 `  v3 N3 T1 g7 c
对,应该是-3。
) |. k2 z$ Q. r' u- P' @$ z, a
谢谢,终于明白了

该用户从未签到

8#
发表于 2014-3-29 10:07 | 只看该作者
VHDL  有符号库和无符号库, 用谁是谁。 无纠结
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-6-3 04:42 , Processed in 0.062500 second(s), 24 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表