标题: c51编程 求这道题的解答,急用,谢谢 [打印本页]

作者: greg    时间: 2017-1-10 15:49
标题: c51编程 求这道题的解答,急用,谢谢
求这道题的解答,急用,谢谢

6b66d90a52ca4176.jpg (12.68 KB, 下载次数: 125)

6b66d90a52ca4176.jpg

作者: ZHANGJINGYU    时间: 2017-1-10 19:40
尴尬了!这是汇编吧!还是C?不像C吧!
作者: greg    时间: 2017-1-10 20:45
ZHANGJINGYU 发表于 2017-1-10 19:40
尴尬了!这是汇编吧!还是C?不像C吧!

汇编和c51都可以解,我想要c的代码
作者: lzxdy    时间: 2017-1-10 21:38
编程有趣,敲字麻烦。
作者: ZHANGJINGYU    时间: 2017-1-10 23:09
greg 发表于 2017-1-10 20:45
汇编和c51都可以解,我想要c的代码

那些不都是地址吗!我不懂那些!实在不好意思!还是等别的大神吧!
作者: cwyadz    时间: 2017-1-11 06:52
是二进制转换10进制
作者: cwyadz    时间: 2017-1-11 06:54
十六进制转十进制。。。。。。。。。。。。。
作者: 13120735872    时间: 2017-1-18 20:52
0x11是地址还是值?
作者: angmall    时间: 2017-1-19 00:15

  1. #include<reg52.h> //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义

  2. char code a[16]={0x11,0x22,0x33,0x44,0x55,0x66,0x77,0x88,0x99,0xaa,0xbb,0xcc,0xdd,0xee,0xff,0};

  3. unsigned int *Pos, *Neg, *Zero;

  4. /*------------------------------------------------
  5.           主函数
  6. ------------------------------------------------*/
  7. void main (void)
  8. {
  9.   unsigned char i, p=0, n=0, z=0;

  10.   Pos=0x40;
  11.   Neg=0x41;
  12.   Zero=0x42;

  13.   for (i=0;i<16;i++)
  14.   {
  15.     if ( a[i] < 0x80) p++;
  16.     if ( a[i] > 0x80) n++;
  17.     if ( a[i] == 0) z++;
  18.   }

  19.   *Pos= p;
  20.   *Neg= n;
  21.   *Zero= z;
  22. }


复制代码

作者: zl2168    时间: 2017-1-19 15:50
本帖最后由 zl2168 于 2017-1-19 15:56 编辑

该题引自张志良编著《单片机原理与控制技术——双解汇编和C51》第3版ISBN 978-7-111-42393-5机械工业出版社
有专与该书配套的教辅书《单片机学习指导及习题解答——双解汇编和C51》第2ISBN 978-7-111-42431-4机械工业出版社,解答在P.58,不用Proteus仿真,在Keil 中利用其自身串行输入输出信息窗口打印显示程序运行结果



作者: 我也喜欢    时间: 2017-1-21 19:41
用指针变量,取出内容判断
作者: cam226390674    时间: 2017-1-22 12:34
和c51都可以解,我想要c的代码
作者: ufo0888    时间: 2017-1-22 15:12
我也想学习下




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1