gcj123(佛的光辉) 你不要这么小气好不好??亏你还起了个"佛的光辉"这么慈悲善良的名字,简直是………懒得说下去了··

解决方案 »

  1.   

    to ehom(?!):
    拜托你看清楚些,我不是要简单的求一个数的补码(这我当然会),而是两个数相乘M*N后的补码,你能算出来吗?至于以上那几题,是比较基础些,但我不会,难道就不能问了吗?
      

  2.   

    2^8=1字节
    1KB=1024字节储存空间:末地址-首地址+1转10进制后除1024后单位变为KB2进制小数转10进制,整数部分是2^0,2^1,2^2...类推小数部分是2^(-1),2^(-2)...类推~~~进位用*2,和十进制*10一样~~~把2进制乘法转化为加法和移位运算~~~你说徒有虚名就徒有虚名,没人在乎这个~~~
      

  3.   

    1.640*480*4=1228800(位)=153600(字节)         '//16色是4位
    2.640*480*8=2457600(位)=307200(字节)=300(KB) '//256色是8位
    3.3FFFFH-00000H+1=40000H=4*10000H=4*64K=256K
    4.浮点数有很多种规则,结果都不一样
      

  4.   

    同意 zyl910(910:分儿,我来了!) 的答案
      

  5.   

    to ehom(?!) :1.1011*10000=11011
    1.1101*10000=11101
    11011*11101=1100001111
    1100001111/100000000=11.00001111"不就是简单的加法和移位运算?因为计算机只能进行这类运算!"这是当然的,但你采用这样的算法有什么依据呢?题目是求[MN]的补,可你又怎么证明11011*11101=1100001111呢??恕小的愚顿不明白,还请您再解释一番!!
      

  6.   

    to zyl910(910:分儿,我来了!) :
    呵呵,谢谢您的热情帮助,但第3题我不太理解,3FFFFH-00000H+1=40000H=4*10000H=4*64K=256K,为什么还要加个1呢??
      

  7.   

    to lysong(平) :
    不好意思,我想问下您说的是哪题??0-4的确是5个整数呀!!!
      

  8.   

    to lysong(平) :
    我问的是第3题没错,可我是问为什么要加1呀!?呵呵,可能我不明白你的意思!
      

  9.   

    1 150k
    2 300k
    3 4m
    4 不懂[MN]是什么
      

  10.   

    to lysong(平) :
    不会吧,它原来是这样的:3FFFFH-00000H+1=40000H=4*10000H=4*64K=256K
    而不是4-0+1呀!
      

  11.   

    to lysong(平) :
    :(不是呀,本来就不懂嘛,什么叫诚心找茬呀??两个道理一样吗??
    那gcj123(佛的光辉) 你来解释解释??
      

  12.   

    楼主啊,你要求的是单元个数,那么3FFFFH-00000H所得比实际单元个数少一
      

  13.   

    单元个数?有吗?要求的是求存储器的容量耶,为什么不3FFFFH-00000H就行了,而要3FFFFH-00000H+1还要加个"!"呢?拜托啦
      

  14.   

    为什么3FFFFH-00000H所得比实际单元个数少一????你怎么知道??
      

  15.   

    唉,不明白也要明白了。谢谢, gcj123(佛的光辉) 那第4题你懂不懂??
      

  16.   

    to lysong(平) :
    喂,别乱诽谤人家好不好,本来我就是姑娘呀,姑娘就姑娘腔呀,难道还阳钢腔??那才怪!
      

  17.   

    3ffffh-00000h的关系就像是4-0的关系一样4到0一共5个数,也就是4-0+1=5那么同理可得:3ffffh-00000h=3ffffh-00000h+1=40000h
      

  18.   

    to lysong(平) :
    喂,你………你………,本姑娘喜欢,怎么样!!我偏耶耶耶………!!!!
      

  19.   

    to chenyu5188(蓝色情调) :
    好,谢谢,你这样说我更明白了!!to gcj123(佛的光辉) :
    还是不懂:(
      

  20.   

    1、某显示器的分辩率为640*480,灰度级为16,则刷新存储的最低容量是____字节?这个题出的有错误,“灰度”这个词用的很不标准,是16Bit色深还是16种颜色?还是Rgb分别有16级灰度(12Bit色深)?a.按照4Bit 16色来计算。 (640*480*4)\8b.按照16Bit来计算。(640*480*16)\8c.按照每个位平面16色(4Bit)计算。(640*480*16)\8。因为在电脑里,最基本的单位是Byte,即使你只用12Bit,也不得不占用16Bit(2Byte)。2、一张640*480的256色图片,那么它的位图文件大小大约是____K?这个题首先要注意一点:BMP的结构。256色的BMP包含BitMapInfoHead和BitMapFileHead以及Palette。BMP文件的最终长度是(位图点阵+文件头长度+颜色表长度)。同时这个题目本身出的不标准,因为不存在大约是多少KB,而是存在至少多少KB。位图点阵:640*480Byte(更迂腐的写法是这样的(640*480*8)\8,不过只要心里知道就可以。这才是最标准的算法。)
    位图色盘:4*256Byte
    文件头:56Byte至于最后是多少你自己算算吧,不要总让别人帮你算。另外,BMP文件的长度没有限制。你可以在任何一个BMP的末尾追加任何长度的数据,只要别覆盖BMP本来的数据图片不会出问题。因为BMP的文件头已经规定了文件结尾的程度,或者可以根据分辨率算出来。一般程序不会傻傻地去读超出的部分。3、某存储器的首地址为00000H,末地址为3FFFFH,该存储器的容量为____K字节?容量=(末地址-首地址)+1其实这是个数轴问题,好比:1982年出生的小仙妹,到了2003年虚岁是多少,也是一个算法。只要你会算自己的虚岁自然就会算它。4、已知两个定点数M=1.1011,N=1.1101,求[MN]补。这个问题我实在回答不了,因为有很多规则。
      

  21.   

    to KiteGirl(小仙妹) :
    呵呵,你好厉害!!!!!以上3题你说得我似懂非懂。呵呵……
    至于第4题,不知道你最拿好哪一种规则,望不吝赐教!!!:)如果能用加法位移计算那更好!!
      

  22.   

    KiteGirl(小仙妹) 同志 又跑这来啦
      

  23.   

    关于第一题。首先,对于16色图象不应该用灰度来表示。因为它是索引色格式,没有所谓的灰度的概念。除非你定义16级灰度的色盘(也叫做颜色表、调色板、Palette),否则不存在灰度。根据题意,应该是16色图象,也就是说是4Bit图象。因为4^2=16,所以4个Bit可以表示从0到15这16个值。图象的容量是这样计算的:ByteSize=(Width*Height*Bit)\8Width=以像素为单位的宽度。Height=以像素为单位的宽度。Bit=色深,就是每个像素占用的2进制位数。ByteSize就是这个图象的以字节为单位的容量。(640*480*4)\8=153,600(Byte)\1024=150KByte(按1024为1K计算)对于第二题是这样的:如果仅仅是说位图那只要按照前面的公式计算就可以了,可是涉及到位图文件就复杂了。因为对于索引色文件来说,除了位图数据外还要有一个256种颜色的色盘。所以说这道题出的很不严谨,应当加一个是否计算色盘的前提。对于256色BMP文件,它至少有1080字节的色盘和文件头数据。即使是我设计的用在某程序里的共用一个色盘的图片库文件,也起码要有一个1024字节的色盘。正确的答案我猜测应该是:(640*480*8)\8=307200字节(300KB)。应该是不考虑色盘。但是这样出问题非常误人子弟,会使学生错误地以为256色图片文件没有色盘的概念。正规的计算方式是这样的:文件头+(色盘+色盘记录头)*色盘数量+(位图矩阵尺寸+位图矩阵记录头)*位图矩阵数量。比如BMP文件是这样的格式:56+(1024+0)*1+(640*480+0)*1。如果你只懂得记录点阵而忽略了色盘,将导致索引色图片变成一堆杂色光点。色盘(调色板)对于256色以及16色等索引色方式的图象非常重要,是不可缺少的。关于第三题。其实这个题在于电脑记数是从0开始的。你有五根手指头,分别是0,1,2,3,4号。用4-0计算出来的4其实是正确的结果,如果从0开始数的话的确你有“4”根手指头。可是人记数是从1开始的,所以要加偏移量1。因此你有Abs(4-0)+1根手指头(我就是这样教我的小侄女算自己年龄的)。其实这个题出得并不好,如果是我应该这样给你出:1、首地址为5FFFFFh,末地址为8FFFFFh。计算这段存储器之间的容量。我在VB里计算两个地址之间的容量是这样写的:Function GetSizeBySegAddress(ByVal pSegOn As Long,ByVal pSegEnd As Long,Optional pMisreg As Long=1) As Long
      GetSizeBySegAddress=Abs(pSegEnd-pSegOn)+pMisreg
    End Function计算两个地址之间的容量:OutSize=GetSizeBySegAddress(&H3FFFFF,&H5FFFFF)也可以反过来用,这就是我加Abs函数的原因,绝对值嘛:OutSize=GetSizeBySegAddress(&H5FFFFF,&H3FFFFF)计算首地址&H000FFF到&H3FFFFF,偏移量&HA00000的末地址。当然这么做用途不大,一般用在类似情况:&H000FFF的绝对地址是&HA00000,你想计算&H3FFFFF的绝对地址。OutSize=GetSizeBySegAddress(&H000FFF,&H3FFFFF,&HA00000)还可以这么用,计算两点的直线距离。呵呵,想不到吧?别晕倒就成:):XLong=GetSizeBySegAddress(X1,X2)
    YLong=GetSizeBySegAddress(Y1,Y2)
    R=SQR(XLong^2+YLong^2)假如X1,Y1是游戏里的飞机,而X2,Y2是游戏里的导弹。那么可以:IF R<10 Then BombOn '爆炸。我在一个小游戏里制作的近炸引信就是这么来的。说了这么多,其实你的问题并不难。但是我觉得这些问题出得太片面,有不足的地方,所以多写了这么多的东西。最后提醒你:千万别局限于课本上的知识,因为实际应用当中会有许多更复杂的情况等着你。