![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++
JpyJpy321
这个作者很懒,什么都没留下…
展开
-
计算机里的正数和负数为什么用补码表示
结论:计算机里正数、负数都用补码表示,方便正数和负数相加的计算;同时,正数的原码、补码相同,因此都用补码表示也不会影响正数和正数相加的情况;原因:若用原码表示的话,16 + (-8) = -24,显然错误00010000 + (10001000) = 1001100若用补码表示的话,16 + (-8) = 8,正确00010000 + (11111000) = 1(舍去)00001000参考:http://www.ruanyifeng.com/blog/2009/08/twos_compl原创 2022-02-22 19:57:10 · 616 阅读 · 0 评论 -
函数栈帧
内存空间内存空间主要被划分为五个部分,分别为栈、共享区、堆、数据段、代码段。函数栈帧在调用函数的过程中,在栈空间中开辟一段空间供函数使用,这段空间就是函数栈帧。栈是向下伸展的,从高地址向低地址延伸;每个函数的每次调用过程中,都有一个唯一的栈帧,用于变量的保存,现场的保护(指?);要维护这个栈帧必须使用两个寄存器,ebp(栈底指针)和esp(栈顶指针);cpu如何知道当前运行到哪里呢?–寄存器存放着要运行的下一条指令;...原创 2021-05-10 18:12:12 · 94 阅读 · 0 评论