摘要: 汇编语言中最最常用的指令 -- 数据传送指令,也是我们接触的第一种类别的汇编指令。其指令的格式为:“mov 源操作数, 目的操作数”。mov系列支持从最小一个字节到最大双字的访问与传送。其中movb用来传送一字节信息,movw用来传送二字节,即一个字的信息,movl用来传送双字信息。这些不详说了。除此以外mov系列还提供两个带位扩展的指令movsbl和movzbl,我们举个例子来说明一下这两个特殊指令的作用何在:a) movzbl指令void dummy1() {unsigned char c = 'a';unsigned int a = c;}其对应的GNU汇编为(省略部分内 阅读全文
posted @ 2014-03-12 21:22 johnny_HITWH 阅读(17881) 评论(2) 推荐(7)
摘要: 常见gcc 编译错误整理(开始) 11 error: expected expression before 'else'else之前无表达式。 2 error:lvalue required as left operand of assignment左值问题。3 error:invalid ... 阅读全文
posted @ 2014-03-12 10:06 johnny_HITWH 阅读(2296) 评论(0) 推荐(0)
摘要: 程序员是追求完美的一族,即使是一般的程序员大多也都不想看到自己的程序中有甚至那么一点点的瑕疵。遇到任意一条编译器警告都坚决不放过。有人会说:我们可以使用比编译器更加严格的静态代码检查工具,如splint。 这个建议也很不错。不过lint工具使用起来较繁琐,有时候还需要记住一些特定符号并插入到你自己的... 阅读全文
posted @ 2014-03-12 10:04 johnny_HITWH 阅读(1240) 评论(0) 推荐(0)