
c/c++
文章平均质量分 74
河里一只虾
这个作者很懒,什么都没留下…
展开
-
汇编语言跳转翻译为c语言if else语句
将条件表达式和语句从c语言翻译成机器代码,最常用的方式是结合有条件和无条件跳转(这里只讨论有条件跳转) 对于大多数情况 汇编代码就是c语言的直接翻译 先看一个例子 c语言的if else 语句由goto完成原创 2017-09-03 00:52:02 · 1686 阅读 · 0 评论 -
32位汇编——c语言循环do——while
c语言中提供多种循环结构,即do-while while for,汇编中没有响应指令提供这三种循环 但是可以使用条件测试和跳转进行组合起来 以实现上述三种循环效果, 大多数汇编会根据一个循环的do-while来产生代码,但是实际c代码中相对较少用到这种循环, 这时其它的循环会转化为do-while形式,然后在编译为机器代码 do body-statement while (test-原创 2017-09-03 22:16:57 · 1062 阅读 · 0 评论 -
数据对齐
计算机系统对基本数据类型合法地址做出了一些限制,要求某种类型对象的地址必须是某个值K(2, 4, 8)的倍数。 这种对齐限制简化了处理器和存储器系统之间的接口的硬件设计 处理器一次从内存中读取2或4或8个字节的数据,而如果地址并不是k的倍数则处理器可能需要执行两次访问操作 其实无论数据是否对齐都能正常工作,但是数据对齐可以提高存储器性能 扩展:有些多媒体操作指令要求存储器地址必须对齐,因此原创 2017-09-15 23:08:32 · 238 阅读 · 0 评论 -
条件传送指令
实现条件操作的一般逻辑思维应是利用控制的条件转移,即c语言中三目操作符类似 (x>y?x:y) 当条件满足时选择一条路径执行 当条件不满足时则选择另一条路径执行 但是计算机的思维同人类不同 也就是说若使用控制的条件转移 在现代处理器上,它可能会非常低 数据的条件的转移 是一种替代的策略, 条件传送指令 虽然它的使用充满了限制 这些指令会根据条件码的值,选择要么什么都不做要么将原创 2017-09-08 22:15:22 · 3454 阅读 · 0 评论 -
数据结构静态栈的基本功能实现
/* 2018年10月16日10:08:50 栈的基本功能是 出栈 入栈 遵循”先进后出“原则 所以栈的基本函数可以有栈的初始化 出入栈过程中栈的状态判断 是否为空或满 以及销毁 实现顺序栈的基本运算的算法 (1)初始化栈 (2)判断栈s是否为空 (3)一次入栈a, b, c, d, e (4)再次判断栈s是否为空 (...原创 2018-10-17 18:01:43 · 196 阅读 · 0 评论