当前位置: 首页 > news >正文

查工程中标信息哪个网站亚马逊seo搜索什么意思

查工程中标信息哪个网站,亚马逊seo搜索什么意思,python 微信网站开发,邵阳企业网站建设陪你把想念的酸拥抱成温暖 陪你把彷徨写出情节来 未来多漫长再漫长还有期待 陪伴你 一直到 故事给说完 ——陪你度过漫长岁月 完整代码见#xff1a;CSAPP/datalab-handout at main SnowLegend-star/CSAPP (github.com) 01 bitXor 这道题是用~和计算x^y。 异或是两个… 陪你把想念的酸拥抱成温暖 陪你把彷徨写出情节来 未来多漫长再漫长还有期待 陪伴你 一直到 故事给说完 ——陪你度过漫长岁月 完整代码见CSAPP/datalab-handout at main · SnowLegend-star/CSAPP (github.com) 01 bitXor 这道题是用~和计算x^y。 异或是两个二进制数ab对应的位相同为0不同为1。既然是ai 和bi 不同才为且只能用~和两种位运算符号。考虑对a取反再和b进行操作。这样当ai 0bi 1时可以得到1但是还得考虑当ai 1bi 0时也应该得到1此时考虑的对b取反再和a进行操作。综合以上两点我们可以初步得到式子为“(~ab)|(a~b)”,换算后得到“~(~(x ~y) ~(~x y))”。 //1 /* * bitXor - x^y using only ~ and * Example: bitXor(4, 5) 1* Legal ops: ~ * Max ops: 14* Rating: 1*/ int bitXor(int x, int y) {return ~(~(x ~y) ~(~x y)); } 02 tmin 返回最小二进制补整数 Tmin不就是0x8000 0000吗注意这里可以用到的整数在0~0xAA之间所以是“131”。 /* * tmin - return minimum twos complement integer * Legal ops: ! ~ ^ | * Max ops: 4* Rating: 1*/ int tmin(void) {//正数的补码是它本身负数的补码是取反加一return 131;} 03 isTmax 如果x是二进制补码的最大值则返回1否则返回0 Tmax0x7FFF FFFF从Tmax的特殊性来考虑。如果xTmax则x1x可以得到0xFFFF FFFFTmin。对于Tmin进行取反则可以得到0。再对0取,则可以令函数返回1。除此之外还要考虑如果x本身就为Tmin则它也会满足上述运算。所以得用^操作排除这种情况。 /** isTmax - returns 1 if x is the maximum, twos complement number,* and 0 otherwise * Legal ops: ! ~ ^ | * Max ops: 10* Rating: 1*/ int isTmax(int x) {//二进制补码的最大值是最高位0其它位1int tempx1;int temp2xtemp;//还得考虑x本身就是0xffffffff的情况,即xtemp2return !(~temp2)!!(x^temp2);} 04 allOddBits 如果word中所有的奇数位为1则返回1否则返回0位从031位 这题十分恶心是第一个卡住我的。开始想得太简单了以为满足条件的数字只有0xAAAA AAAA这一个。后来发现0xFFAA AAAA这种也可以这就让我犯了难——对于0xFF这种形式要怎么判断呢想了很久都没有头绪。跳过这题后面再写的时候灵光一闪想到只要判断奇数位是1就行根本就不用考虑偶数位。要做到这一步其实就是把x和0xAAAA AAAA进行操作可以提取出x奇数为上所有的1得到数字x2。我们会发现只要x满足条件那进行上一步操作后的形式都是统一的0xAAAA AAAA。所以最后判断x2是不是与0xAAAA AAAA一致就行。 /* * allOddBits - return 1 if all odd-numbered bits in word set to 1* where bits are numbered from 0 (least significant) to 31 (most significant)* Examples allOddBits(0xFFFFFFFD) 0, allOddBits(0xAAAAAAAA) 1* Legal ops: ! ~ ^ | * Max ops: 12* Rating: 2*/ int allOddBits(int x) {//没搞出来//计算机的右移位运算默认是逻辑还是算数呢dev c是逻辑//直接不用考虑偶数位的情况只考虑奇数位全为1的时候//怎么在dev c上跑x0x80000000的时候返回0这时候就返回1了int a0xAA8;int ba0xAA; //b0xAAAAint c(b16)b; //这里b16得加括号因为的优先级大于int d!((cx)^c); return d;//强行令偶数位全为0再进行比较 } 05 negate 返回-x 简单的取反加一操作。最开始还在考虑Tmin的特殊性验算后发现Tmin也符合这个规律。秒了芜湖 /* * negate - return -x * Example: negate(1) -1.* Legal ops: ! ~ ^ | * Max ops: 5* Rating: 2*/ int negate(int x) {return ~x1; } 06 isAsciiDigit 如果0x30 x 0x39返回1否则返回0 开始我的思路是挨个判断x的每一位。即x的第5、6位只能为1再高位只能为0对于低四位第4位为1的时候只有第1位可以同时为1如果第4位为0则后三位无论是什么值都可以。但是挨个判断每一位需要的符号好像会超过限制。 后来看了别的解法第一次发现了符号位的大用。基本上这次的lab都没提供“-”这个操作但是可以利用“(~x1)”来实现减法。如果给出x只要用两个边界值0x30和0x39对x进行减法操作就行。最后通过符号位来判断x与0x30和0x39的大小。这种思路在后面的题目也会用到。 /* * isAsciiDigit - return 1 if 0x30 x 0x39 (ASCII codes for characters 0 to 9)* Example: isAsciiDigit(0x35) 1.* isAsciiDigit(0x3a) 0.* isAsciiDigit(0x05) 0.* Legal ops: ! ~ ^ | * Max ops: 15* Rating: 3*/ int isAsciiDigit(int x) {//判断第四五位都是1、且高位都是0,1-3位值得小于等于9//x做完移位运算后自身值不发生改变的int ax~(0x30)1;int b0x39~x1;int ca31;int db31;return !c!d; } 07 conditional 用位级运算表示三目运算符 x?y:z 我们要注意到一点这种返回值在几个数中选一个的势必得用到“|”操作比如T01要是能用上“|”就会简单许多。由于只要x不为0就返回y为0才返回z。要返回y就是考虑当x不为0时让y和0xFFFF FFFF进行操作。一个全新的操作在我脑中应运而生那就是“!!x”。只要x不为0那!!x就会得到1x为0那!!x会得到0。而对0或者1进行取反加一就可以得到0或者0xFFFF FFFF。这样我们就得到了想要的全1二进制数。此题结束。 /* * conditional - same as x ? y : z * Example: conditional(2,4,5) 4* Legal ops: ! ~ ^ | * Max ops: 16* Rating: 3*/ int conditional(int x, int y, int z) {return y(~(!!x)1)|(z~(~(!!x)1)); } 08 isLessOrEqual 如果xy则返回1否则返回0 这题算是T06的弱化版。T06还得进行两次比大小这题只用比一次就行了。也是用减法然后进行符号位的判断就可以解决。 /* * isLessOrEqual - if x y then return 1, else return 0 * Example: isLessOrEqual(4,5) 1.* Legal ops: ! ~ ^ | * Max ops: 24* Rating: 3*/ int isLessOrEqual(int x, int y) {int ay(~x1);int bx311;int cy311;return (b!c)|(!(a31)!(b^c));//得控制后半部分只有同号的时候才能计算 } 09 logicalNeg 用其余的操作符实现 这题算是第二题卡了我很久的。想了一个多小时也没头绪——要如何才能做到当x不为0时返回0假如从x的每一位着手只要发现有一位不为0就可以判断x不为0但是这样就要用到for循环了。遂跳过这题。 后来第二天再看的时候灵光一闪。既然对x的每位进行判断有困难那还是老样子直接考虑数字这个整体。由于题目提供的运算符也不多所以x的正负性成了可以拿来解题的性质。注意到一点只要x不为0那x的相反数符号位就和x的符号位是不同的。从正负性和符号位着手这题就很容易解决了。 /* * logicalNeg - implement the ! operator, using all of * the legal operators except !* Examples: logicalNeg(3) 0, logicalNeg(0) 1* Legal ops: ~ ^ | * Max ops: 12* Rating: 4 */ int logicalNeg(int x) {//不会 //果然过一天再搞就会有新思路利用相反数符号的性质int x2~x1;int sign(x31)^(x231);int minx31;return (~sign)1~((x2^x)^min); } 10 howManyBits 使用补码时最少需要多少比特位 这题的运算符限制是90给人一种代码结构肯定十分庞大的感觉倒是让我一下子不知如何下手。首先考虑的是把数字x和 、 … ​​​​​​​​​​​​​​​​​​​​​ 进行比较但这样用到的运算符数目必然会超过90。于是又想到了用二分法但是二分法得结合for循环才好实施吧。最后又想到了一种二分法的变体。即x先和 ​​​​​​​ 比较若是大于它就对x进行“16”的操作然后再和 ​​​​​​​ 相比小于它就直接和 ​​​​​​​ 进行比较。在不断的比较和移位操作中应该是可以判断出来的。 但是写其他题已经是花费了许多心力遂开摆。等什么时候状态好了再来拿下这题。 /* howManyBits - return the minimum number of bits required to represent x in* twos complement* Examples: howManyBits(12) 5* howManyBits(298) 10* howManyBits(-5) 4* howManyBits(0) 1* howManyBits(-1) 1* howManyBits(0x80000000) 32* Legal ops: ! ~ ^ | * Max ops: 90* Rating: 4*/ int howManyBits(int x) { //开摆不想写了int tempx31; //记录x的正负性int a~x1;int b(116)a;int cb31; //用符号位判断2^16和x的大小return 0; } 11 floatScale2 给定一个无符号数f我们以浮点数的格式来看待这个数f返回2*f。 首先得明白浮点数大致有三种类型规格数非规格数无穷大或者NaN。然后提取出f的exp和frac部分。若f不是非规格数对它进行判断再返回。若是规格数就好办了直接在exp部分加上1就能返回了。 值得一提的是非规格数如果尾数最高位为1时右移1位会使阶码最低位从0变为1而这时候恰好就是正确的结果并不需要额外的处理。这是因为乘2之后完成了进位刚好规格数在小数点前有一个1规格数和非规格数从而无缝衔接。 /* * floatScale2 - Return bit-level equivalent of expression 2*f for* floating point argument f.* Both the argument and result are passed as unsigned ints, but* they are to be interpreted as the bit-level representation of* single-precision floating point values.* When argument is NaN, return argument* Legal ops: Any integer/unsigned operations incl. ||, . also if, while* Max ops: 30* Rating: 4*/ unsigned floatScale2(unsigned uf) {//先提取阶码位int expuf 0x7f800000;int fracuf 0x7fffff;if(uf0x7f800000||uf0xff800000)return uf; else if(exp0x7f800000frac!0)return uf;else if(exp0)return (uf0x80000000)(frac1);//记得给位运算加括号elsereturn uf 0x800000; } 12 floatFloat2Int 给定一个无符号数f我们以浮点数的格式来看待这个数f将这个浮点数f转换为整形。 上来就考虑两个边界即浮点数太小就返回0太大就返回0x80000000u。我们知道浮点数的计算方法是“”,其中Ee-127。故当e127的时候这个数整体就1了。当e12730的时候E31直接达到了32bit能表达的数据上限。其他情况就是套用此式即可。 /* * floatFloat2Int - Return bit-level equivalent of expression (int) f* for floating point argument f.* Argument is passed as unsigned int, but* it is to be interpreted as the bit-level representation of a* single-precision floating point value.* Anything out of range (including NaN and infinity) should return* 0x80000000u.* Legal ops: Any integer/unsigned operations incl. ||, . also if, while* Max ops: 30* Rating: 4*/ int floatFloat2Int(unsigned uf) {int exp(uf 0x7f800000)23;int fracuf 0x7fffff;if(exp12730)//无穷大或者是NaN都返回统一的值return 0x80000000u;else if(exp127){//非规格化的数,return 0;}if(uf31)return -(((frac23)1)(exp-0x7F));else return ((frac23)1)(exp-0x7F); } 13 floatPower2 返回2的x次方返回用无符号数表示的浮点数 当e-126时这已经是浮点数能表示的最小值了所以返回0。当e127浮点数表示不出来这种数字只能返回无穷大了。其他的情况Exbias左移23位即可。 /* * floatPower2 - Return bit-level equivalent of the expression 2.0^x* (2.0 raised to the power x) for any 32-bit integer x.** The unsigned value that is returned should have the identical bit* representation as the single-precision floating-point number 2.0^x.* If the result is too small to be represented as a denorm, return* 0. If too large, return INF.* * Legal ops: Any integer/unsigned operations incl. ||, . Also if, while * Max ops: 30 * Rating: 4*/ unsigned floatPower2(int x) {if(x-126)return 0;else if(x127)return (0xFF)23;return (x127)23;return 2; }
http://www.w-s-a.com/news/692153/

相关文章:

  • 企业建站系统平台优秀网站作品截图
  • 杭州品牌网站制作wordpress多域名移动主题
  • 北京网站网站建设icp备案 网站备案
  • 长春网站公司哪家好电子商务网站建设作文
  • 网站开发php程序员网上店铺怎么运营
  • mip网站怎么做匹配h5婚纱摄影网站模板
  • 怎么注册建设公司网站域名历史价格查询
  • 爱站网seo工具包互联网软件开发工程师
  • 百度站长工具平台登录郑州seo规则
  • 财税公司做网站精品建站教程
  • 建设区块链网站区块链开发平台有哪些
  • 青年人爱看的网站ie显示wordpress网页不完整
  • 优惠券推广网站怎么做青岛正规网站建设哪家便宜
  • 怎么搞一个服务器建设网站wordpress页眉编辑
  • 计算机企业网站建设论文流量平台是什么意思
  • 成都建设网站公司哪家好上海有名的广告公司
  • 收录优美图片找不到了整站seo优化一般多少钱
  • 大型网站建设哪家好汉川网页设计
  • 深圳品牌策划公司推荐南昌网站怎么做seo
  • 滨州做微商城网站备案时暂时关闭网站
  • 手机网站样式代码网站是怎样制作的
  • 任务发布网站建设苏州园区房价
  • 网站的认识知识付费做的最好的平台
  • 企业电子商务网站设计的原则深圳的网站建设公司怎么样
  • 个人网站趋向wordpress图片搬家
  • 做空压机网站的公司有哪些wordpress 外部链接
  • 网站建设管理成本估计小红书推广平台
  • 一级a做爰片免费观看网站焦作建设企业网站公司
  • 欧阳网站建设2022华为云营销季
  • 快速学做网站高水平的大连网站建设