定义了三个无符号整型变量i,j,k,其中对k进行了初始化赋值,即k=2500
百度试题 题目在延时delay( ) {unsigned int i, j; for(i=0; i<100; i++) for(j=0; j<100; j++);}程序中i一共被执行了___次,j一共被执行了___次。相关知识点: 试题来源: 解析 100 10000 反馈 收藏
{ unsigned int i,j; for(i=0; i { for(j=0;j<120;j++) } } void main(void) { while(1) { P10=1; delay(800) ; P10=0; delay(800) } } 设单片机系统时钟频率为12MHz,工作于12时钟模式,试编程使P1.2引脚输出周期为5ms的方波。 请为每条语句加上详细的注释。
延时,让程序运行要消耗时间,这样达到延时效果
并行 数据总线[14] 地址总线[15] P0 P1- P3 CPU 存储器 I/O 接口 5 2 运算器[16] 存储器 ___ 控制器 输入部分 _ 输出部分 立即数寻址[17] _直接寻址 寄存器寻址 寄存器间接寻址[18] ___变址[19]
会自动将int类型的数转换为unsigned int类型然后再相加,计算机中数值是以其补码存储的,所以负数的值,计算机存储的二进制值其实是很大的。所以-20转换为一个无符号数,会得到一个很大的数,因此若两数相加也会得到一个很大的数。例如:你可以试下试,那j=10 更改为j=30就会发生溢出问题。
百度试题 题目尝试执行下面语句: unsigned int i = 2; int j = -3; cout<<(i*j)< 输出结果是下面哪一个?相关知识点: 试题来源: 解析 一个无符号整数 反馈 收藏
题目 不正确的变量说明是( ). A.unsigned int ui B.short int s C.double int A D.int i,j,k
答案应该是32767,可以用7*n+2-2^16=5*n来算,因为j到65535后从新为0,然后又回头与i比较,所以答案应该为32767