麻烦帮忙解决一下这道题!

用一个字节的字长,将十进制数-14转换成相应的二进制的补码为 ()H

注H为16进制的符号
答案是F2H,为什么呢!

hexadecimal-->十六进制
-14----原码--->1000 1110
--------补码--->1111 0010 //既00001110(+14)取反+1
----十六进制-> F 2 //四位一组变成16进制
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-12-19
H什么时候变成十六进制符号了?-14二进制是10001110补码为01110001
第2个回答  2010-12-20
#include<stdio.h>

void main()
{
int dong,hong,pan,tai;
for(dong=1;dong<=4;dong++)
for(hong=1;hong<=4;hong++)
for(pan=1;pan<=4;pan++)
for(tai=1;tai<=4;tai++)
{
if(
(dong!=hong && dong!=pan && dong!=tai
&& hong!=pan && hong!=tai && pan!=tai) &&

((dong==1)+(hong==4)+(pan==3))==1 &&
((hong==1)+(dong==4)+(pan==2)+(tai==3))==1 &&
((hong==4)+(dong==3))==1 &&
((pan==1)+(tai==4)+(hong==2)+(dong==3))==1

&& dong+hong+pan+tai==(1+2+3+4)
)
{
printf("dong_ting=%d, hong_ze=%d, pan_yang=%d, tai_hu=%d\n",
dong,hong,pan,tai);
}
}
printf("\n");
}

dong_ting=2, hong_ze=4, pan_yang=1, tai_hu=3

为什么要用VB呢?用C# C++ JAVA不更好?
相似回答