找回密码
 注册
关于网站域名变更的通知
查看: 1720|回复: 8
打印 上一主题 下一主题

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
r e g [0:5] B a r;
" c$ Y  W% D& E+ si n t e g e r T a b;% B9 o; L# j1 [7 |+ e
B a r = - 4'd12/4;# s& @: e& c' Z5 n
T a b = - 4'd12 /4;
8 F7 }6 g2 x; b请教大家一个问题3 C7 Z0 ~% ?+ l" B4 L. T
最终bar和tab的值是多少?
: \3 D. R2 O  `2 `7 }Bar定义为寄存器变量,默认的是无符号型,tab定义整型,默认32位无符号型。
# L. _3 _7 p" Z+ ~# d书上说bar的最终结果是:61,tab的最终结果是:1073741821& S& `! n3 C0 W
  Y. d" X: O8 O9 P7 c
但是我总觉得bar的最终结果是13  (001101)7 D" w9 H% d# ^) P6 I' {  W9 D1 s

4 H9 z" B" `7 `2 t) b0 h  s请教大家,应该到底是多少呢?

该用户从未签到

2#
发表于 2014-3-7 23:50 | 只看该作者
本帖最后由 zgq800712 于 2014-3-7 23:54 编辑
$ S+ s8 f0 L8 x5 i  Y
+ F$ o7 v5 C9 |7 l# @  F7 U: NBar 是6位的,Bar=-4‘d12/4 ,那就是-3,
& s( m1 L+ m3 b0 }7 u
' F( d! l% h: O1 r最高位是符号位1 G$ W; v0 g2 ^1 ^; L5 D% X
10,0011 --- 原码2 J+ U' D% A& r2 s! ~& H
11,1100  ----- 反码. b: p) e% A. Q
11,1101 ------ 补码
' i& M9 K# f4 t' @  w1 g8 p
: Q# [$ [3 Q& `+ C  j负数就是按补码来的;11,1101 是多少? 就是61
$ `( `6 u( H& b  [; r! D, X4 z5 I$ p1 g7 z
另外一个算的不对,我算不出来; N* A  @4 J% R6 f" N2 V
, N) ^" I2 L+ v% T4 Q7 ?4 X2 }

该用户从未签到

3#
 楼主| 发表于 2014-3-8 17:33 | 只看该作者
zgq800712 发表于 2014-3-7 23:50
" {1 u' p8 D5 JBar 是6位的,Bar=-4‘d12/4 ,那就是-3,
4 ~4 `: e& l8 X' y% j" u  t( a; l7 a. X9 o( O8 V. b8 `6 v
最高位是符号位
5 G! c; F/ U# G% O
另外一个也是先算的补码,因为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( f( ^5 x$ u# N) @
"/"的优先级高于“-”,第二个结果是不对的。
5 N' Z- @# a3 R; K& |* ~0 |8 a
这么说的话,tab的值应该是-3喽?书上的那个结果是错误的?

该用户从未签到

6#
发表于 2014-3-17 08:35 | 只看该作者
pipiliang 发表于 2014-3-14 23:41
( W2 h" d5 W1 l2 w这么说的话,tab的值应该是-3喽?书上的那个结果是错误的?

6 `7 b1 X+ b  W( \4 s. z对,应该是-3。

该用户从未签到

7#
 楼主| 发表于 2014-3-26 20:44 | 只看该作者
lvsy 发表于 2014-3-17 08:35& i- f0 |' H, L4 T8 ?
对,应该是-3。
% ?% }) T4 y% z
谢谢,终于明白了

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-10-5 17:55 , Processed in 0.140625 second(s), 24 queries , Gzip On.

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

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

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