编程语言
文章平均质量分 71
jxb198899
这个作者很懒,什么都没留下…
展开
-
简单的双缓冲区实现
简单的双缓冲区实现一、简述在一些应用中可能需要用到双缓冲区,每个缓冲区有两种状态——可读的和可写的。当可写的缓冲区写满后转变为可读的,当可读的缓冲区数据全部被读取后转变为可写的。二、实现实现中使用了线程互斥量,保证各个操作是线程安全的。/* doublebuffer.h starting */#ifndef __DOUBLE_BUFFER_H__#define __DOUB原创 2013-12-16 10:20:01 · 1428 阅读 · 0 评论 -
MOV、LDR加载指令和LDR伪指令的区别
1、MOV指令MOV指令的语法格式: Rd只能是寄存器Op2寄存器或立即数 Op2为寄存器时:MOV R0, R1MOV R0, R1, LSL #4 ;将R1中的值逻辑左移4位放入R0 Op2为立即数立即数就只能由0到255中得某个数经过循环右移偶数次(包含0次)得到MOV R0,#0x20 ;正确MOV R0,#0x200 ;正确MOV原创 2014-06-25 20:31:28 · 1355 阅读 · 0 评论 -
C语言命名空间详解
一个能够完整说明问题的例子#include #include //可以开关这个宏定义//并用gcc -E main.c -o main.i来看宏的效果//#define msg hahastruct msg //【结构标签命名空间】{ int msg; //【结构内部的命名空间】,只需在结构内部唯一即可};union u_msg //【联合标签命名空间】和结构、枚原创 2014-05-27 18:33:14 · 12391 阅读 · 1 评论