EDA365电子论坛网

标题: 一个关于无符号数和有符号数的问题,各路大神,有时间进来看看 [打印本页]

作者: pipiliang    时间: 2014-3-7 23:05
标题: 一个关于无符号数和有符号数的问题,各路大神,有时间进来看看
r e g [0:5] B a r;1 ]3 N+ n. ~1 G3 i' C2 D
i n t e g e r T a b;
$ Z. z' @$ }7 e- FB a r = - 4'd12/4;
5 F" S- {* b/ {8 |T a b = - 4'd12 /4;
8 t/ c" r/ d5 A6 i2 \请教大家一个问题
2 ^6 C% C; G- c最终bar和tab的值是多少?* @3 ~0 {" j9 w4 G* A; p2 V
Bar定义为寄存器变量,默认的是无符号型,tab定义整型,默认32位无符号型。! t/ d. |  o) J$ P& f) a- o) \$ C* o
书上说bar的最终结果是:61,tab的最终结果是:1073741821/ W7 i0 f# K1 x, o/ y
1 Q+ F& J& F3 ^8 L
但是我总觉得bar的最终结果是13  (001101)
9 n5 E% O5 y" H- t % V) E3 W" m1 p3 z& n" N8 V  \
请教大家,应该到底是多少呢?
作者: zgq800712    时间: 2014-3-7 23:50
本帖最后由 zgq800712 于 2014-3-7 23:54 编辑 . c) [' [* T8 |
# q: a2 m' L) z, Y
Bar 是6位的,Bar=-4‘d12/4 ,那就是-3,
9 E% N; q0 i) L: {5 C" p% H. Z( i  h6 \' {5 E( l* W
最高位是符号位
( E2 b# j9 H" h7 H! C- B/ W9 A10,0011 --- 原码8 q9 H! s  L( T" x
11,1100  ----- 反码
2 r' B. p* R; {$ H8 G0 Y11,1101 ------ 补码
6 m% ^# T" f7 e! b$ W3 }8 W
# b) j( M9 ~0 d/ l# S5 U! G负数就是按补码来的;11,1101 是多少? 就是61# j. V( `$ _" F  E
( Z! e. V- z* i% F7 U7 L& q
另外一个算的不对,我算不出来
. H! {1 g! s' l3 `
. N* A/ p# ]1 o$ J- l; E
作者: pipiliang    时间: 2014-3-8 17:33
zgq800712 发表于 2014-3-7 23:50/ m8 b/ b# N. q+ n2 T8 Y, V' d
Bar 是6位的,Bar=-4‘d12/4 ,那就是-3,) z2 q7 y% N/ k# j- a" k2 J

4 m; u4 Y- \. m& R& ~' {* D最高位是符号位

* \4 h6 X" Q5 @' w! f  e/ A5 L, Z另外一个也是先算的补码,因为tab是整形变量,默认32位,所以- 4'd12要先转化为32位的补码为FFFF_FFF4再进行计算,因为基数形式默认的是无符号型,所以便是:FFFF_FFF4/4=3FFF_FFFD它的十进制数就是:1073741821。这个数就是这么来的。所以我Bar的结果我总感觉不对,觉得应该是先将- 4'd12转化为6位的二进制补码110100=52,然后再除以4,结果得到的应该是13.
作者: lvsy    时间: 2014-3-10 10:59
"/"的优先级高于“-”,第二个结果是不对的。
作者: pipiliang    时间: 2014-3-14 23:41
lvsy 发表于 2014-3-10 10:59
4 s: ~/ L" L+ Z$ U"/"的优先级高于“-”,第二个结果是不对的。
$ y) {2 I& P7 @9 q
这么说的话,tab的值应该是-3喽?书上的那个结果是错误的?
作者: lvsy    时间: 2014-3-17 08:35
pipiliang 发表于 2014-3-14 23:41# c. j) {/ f$ D
这么说的话,tab的值应该是-3喽?书上的那个结果是错误的?

1 R3 J) }/ C6 Z8 J3 W* \对,应该是-3。
作者: pipiliang    时间: 2014-3-26 20:44
lvsy 发表于 2014-3-17 08:35
; q( }% H4 C5 A% Z对,应该是-3。
. G$ _; g( ?8 s0 G& I% [( ~3 Q( [
谢谢,终于明白了
作者: eda366_murphy    时间: 2014-3-29 10:07
VHDL  有符号库和无符号库, 用谁是谁。 无纠结
作者: kuochiang    时间: 2015-5-28 14:47
感謝分享~~




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2