-123 32763 -65531存入二字节内存中,写出对应的十六进制机器码?

 我来答
My_Persistence
2017-12-19 · TA获得超过3467个赞
知道大有可为答主
回答量:1201
采纳率:81%
帮助的人:434万
展开全部
(-123)D=(1111 1111 1000 0101)B=0xFF85
(32763)D=(0111 1111 1111 1011)B=0x7FFB
因为2字节的内存空间存放的最大的负数是-32768,因此会发生内存溢出,我们可以强行
赋值,然后看输出什么,代码如下:
#include "stdio.h"
void main(void)
{
short a=-65531;
printf("%hd\n",a);
printf("%hu\n",a);
}
//运行结果
F:\c_work>a.exe
5
因此依据上面的输出结果,我们可以得出,在2字节的内存空间中实际存放的是数值5
因此,它的16进制是0x0005。
detax
2017-12-19 · TA获得超过2.6万个赞
知道小有建树答主
回答量:1335
采纳率:64%
帮助的人:472万
展开全部
Windows附件里有个叫计算器的东东,查看-科学型,输入数字,然后选不同进制
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式