C51中定义一个可位寻址变量FLAG访问P3口的P3.1引脚方法是()。
A.LED0是特殊功能寄存器
B.定义一个sbit变量
C.Sbit是C51语言特有的关键字,软件中对LED0的处理就是对P2.0脚的处理
D.外围接口地址
关键字 volatile 有什么含意 并给出三个不同的例子。
一个定义为volatile 的变量是说这变量可能会被意想不到地改变,这样,编译器就不会去假设这个变量的值了。精确地说就是,优化器在用到这个变量时必须每次都小心地重新读取这个变量的值,而不是使用保存在寄存器里的备份。下
面是volatile 变量的几个例子:
1). 并行设备的硬件寄存器(如:状态寄存器)
2). 一 个 中断 服 务子 程 序中 会 访问 到 的非 自 动变 量 (Non-automatic variables)
3). 多线程应用中被几个任务共享的变量
C 程序员和嵌入式系统程序员的最基本的问题。嵌入式系统程序员经常同硬件、中断、RTOS等等打交道,所用这些都要求volatile 变量。不懂得volatile 内容将会带来灾难。 (嗯,怀疑这否会是这样),我将稍微深究
一下,看一下这家伙是不是直正懂得volatile 完全的重要性。
1). 一个参数既可以是const 还可以是volatile 吗?解释为什么。
2). 一个指针可以是volatile 吗?解释为什么。
3). 下面的函数有什么错误: int square(volatile int *ptr)
{ return *ptr * *ptr;
}
A.定义该变量的程序文件中的函数都可以访问
B.定义该变量的函数中的定义处以下的任何语句都可以访问
C.定义该变量的复合语句中的定义处以下的任何语句都可以访问
D.定义该变量的函数中的定义处以上的任何语句都可以访问
A.一次可声明多个变量和方法,只要以“;”结尾就行
B.一个声明仅在一个页面中有效
C.声明的变量将作为局部变量
D.在预定义中声明的变量将在JSP页面初始化时初始化