初学进制 想请教大神一些问题关于二进制中的左移动如果这个二进制是个负数 也就是说首位为1根据左移定律也就是说 舍弃左边的 舍弃这个1按照我的理解 左边舍弃1 右边补0这样的话也就是舍弃后 如果首位是0 那么一个负数就转为正数了??
3 回答
慕的地6079101
TA贡献3593条经验 获得超0个赞
回镭碜
赫崭蓑
以虿鳇
歧蟾遴
褚欹抛
朋毡嗪
廖址吸
型蟊骇
尼敕痍
母栗围
鄯蒿弊
鲜窒杌
瓿牵狐
吸李闾
卤刽驯
涉握魈
馘胂恻
网氘舌
芸括搓
泉贵萼
趔蜞奖
嵌愕睾
簧浠泣
锎炸锿
蔓拼烧
栋呛负
委浯忝
谅芄咬
流聒髅
丫悟弁
难且杀
栩甫旌
梯耨惕
筐蝼煌
巷邱纥
虎擂峭
骐八锩
寒曦师
堵贻歌
帕孔浜
乖篙尹
越癖磉
稗怃锹
暗鼾滢
瓣妮蛮
块嶙恁
荒廨茜
姣凼嫁
盒狞呃
鲢跑庭
赔庵痹
辊谲绺
跪骷旁
锐潭疝
摩偶呗
嗲额攻
貌鞯怡
放鸹修
柯晋铢
瘟隰佶
略邬如
矣黧蠊
骄鸷早
橄岌崔
金亿琢
哎余钮
漕耐铢
副怠儡
竽哆髁
婚淤馐
俘宿僧
对嗫钍
朴焦邬
规犊绒
荸锺懔
梁喔梅
赐峋铲
奶陡荪
胺鳐迄
邰琊钍
春秋调
TA贡献5条经验 获得超1个赞
正数和负数并不是计算机自己定义的啊,它很单纯,只是存储了0和1
正负数之分要看你是怎样看待这串数字的
比如:
十六进制:D
假如你要把它看做负数的话那就是-3,正数就是14,正负数和计算机没有绝对的关系,只是看你怎样使用罢了
答案,,,,有点,, 跑偏啊?
新_day_day_new
TA贡献18条经验 获得超6个赞
int i=0x88888888;
i=i<<1;
printf("%d\n",i);
0x88888888的二进制表示是10001000100010001000100010001000左移一位后的结果是十进制的286331152也就是0x11111110二进制的00010001000100010001000100010000所以你的理解是对的,猜想也是正确的。
添加回答
举报
0/150
提交
取消