文章
126
粉丝
35
获赞
0
访问
24.9k
(1)10次;观察f1的汇编代码,第16行的指令;
(2)第12行jle 指令;第16行call指令,第20行jmp (jump) 指令,第30行ret (return) 指令
(3)第17行指令的虚拟地址为00401025H+5H=0040102AH
(PC)=0040102AH;偏移量=目标地址-(PC)=00401000H-0040102AH=FFFFFFD6H;小端方式
(4)f1返回值类型为int,int型数据占32位,int的表示范围为 −2^31∼2^31−1,f(13)=6 227 020 800大于32位int型数据可表示的最大值,因而f1(13)的返回值是一个发生了溢出的结果;将函数f1的返回值类型改为具有更大表示范围的float;
(5)溢出自陷指令;
登录后发布评论
暂无评论,来抢沙发