教程讲稿与汇编_第1页
教程讲稿与汇编_第2页
教程讲稿与汇编_第3页
教程讲稿与汇编_第4页
教程讲稿与汇编_第5页
免费预览已结束,剩余27页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

预备知识1K

=1M=1024K=1G=1024M=1T=1024G=1P=1024T=

1个二进制位 (比特8个二进制位:Byte(字节)1Byte=8bit Word(字)1Word=2Byte=数制基数 二进20,八进80,1,2,3,4,5,6,十进0,1,2,3,4,5,6,7,8,十六进0,1,2,3,4,5,6,7,8,A,B,C,D,E, 降幂法 05C3

3D25+3+31D2EHH—4205C376HH“与”运算 “或”运算 AB AB000000010011100101111111 AAAB0100010011101110例:X= Y=5555H,Z=XY=X=0000000011111111Y=0101010101010101Z=0101010110101010Z=机器字(machineword)地址的表示空间是对很多地址的表示空间是对很多内存需求量大的应用而言,非常有64位字地址的表示空间约是1.8X1019目前的x86-64机型实际支持48位宽的地址:256==地====

=

=== BigEndian:Sun,PPCMac,低位字节(Leastsignificantbyte,LSB)占据高地LittleEndian:与LSB相Big

数值是 Little

001110110011101101103B6DintB=-longintC=IA32,x86-

x86-

IA32,x86- CDataTypicalCDataTypical32-x86-x86-111222444448long888444888long8char448Oranyother 判断以下的推断或者等式是否成立(不成立则给出范例x,y为32位带符号整初始

x< ((x*2)<ux>=x&7== (x<<30)<ux>-intx=inty=bar();unsignedux=unsignedintx=inty=bar();unsignedux=unsigneduy=x*x>=x>0&&y> x+y>x>= -x<=x<= -x>=(x|-x)>>31==-ux>>3==xx>>3==x&(x-1)!= 无符号 带符号数(补码,Two’sB2U(X xi2

B2T(X xw12w1xishortshortintx=15213;shortinty=-x3By-C4符号位(sign对于补码表示,MSB表示整数的符1for01for无符号

带符号数(补码

2w–

2w–1–负1=假设字长为FF7F-80-FF0000XX001122334455667789

xwx x常数如果有“U”作为后缀则是无符号数,如 如果无符号数与带符号数混合使用,则带符号数默认转换为无符号UU实例UU00-U-(unsigned)-UMax–1

TMax+

模运按位运建议:不能仅仅因为取值范围是非负而使forfor(i=cnt-2;i>=0;i--a[i]+=#defineDELTAsizeof(int)inti;for(i=CNT;i-DELTA>=0;i-=..TrueSum:w+1

•••••••••u+••DiscardCarry:w UAddw(u•• UAddw(u, (u+v)mod uwuvuv2uv2TrueSum:w+1

•••••••••u+••DiscardCarry:w TAddw(u••与无符号数的一Signedvs.unsignedadditioninints,t,u,s=(int)((unsigned)u+(unsigned)t=u+s==0

True0

2w

TAdd0

11

–2w

v2w

uvTMinwuvTMaxwuu>>kgivesu/2k采用逻辑右00uBinary00uBinary/u/.u/2k000100xBx>>1Dx>>03x>>00Cunsignedunsignedudiv8(unsigned{return}CompiledArithmetic $3, $3,#Logicalshiftreturnx>>x>>kgivesx/2k采用算术右但是x<0时,舍入错000

Binary110000/x00/x/.

RoundDown(x/y--C4y>>--E2y>>--FCy>>--FFWantx2k (需要向0舍入,而不是向下舍入Computeas(x+2k-1)/2kInC:(x+(1<<k)-1)>>BiasesdividendtowardCase1:No

110001010001110111Binary/u/2k001000111.11BiasingBiasinghasnoCase2:

k110110011001100

Incrementedby

Binary100/x/2k100/x/2k11.100

IncrementedbyCintintidiv8(int{return}CompiledArithmetic testltestl%eax,$3,$7,%eaxifx<0x+=#Arithmeticreturnx>> 判断以下的推断或者等式是否成立(不成立则给出示例x,y为32位带符号整初始

x< ((x*2)<ux>=x&7== (x<<30)<ux>-intx=inty=bar();unsignedux=unsignedintx=inty=bar();unsi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论