嵌入式学习第二天(C语言)

gcc编译器 

ASCII表

字符和二进制数据间的转换关系

        'A' -> 65
        'a' -> 97

C语言数据类型及常量

C语言基本数据类型:

整数类型

字符类型

在内存空间所占字节数

存储方式

值域范围

unsigned short无符号短整型

2

16位均表示数据位(数据对应的二进制形式)

0-65535

Short 短整型

2

1位符号位+15位数据位(数据的补码)

-32768-32767

unsigned int无符号整型

4

32位均表示数据位(数据对应的二进制形式)

0-2^32-1

int 整型

4

1位符号位+31位数据位(数据的补码)

-2^31-2^31-1

unsigned long 无符号长整型

8

64位均表示数据位(数据对应的二进制形式)

0-2^64-1

long长整型

8

1位符号位+63位数据位(数据的补码)

-2^63-2^63-1

   整数类型默认为有符号类型

字符类型

字符类型

在内存空间所占字节数

存储方式

值域范围

unsigned char无符号字符型

1

字符->ASCII码表->二进制数据->存放内存

0-255

char 有符号字符型

1

-128-127

   

浮点数类型

字符类型

在内存空间所占字节数

存储方式

值域范围

float 单精度浮点型

4

1位符号位 + 8位指数位 + 23位尾数位

0-255

double 双精度浮点型

8

1位符号位 + 11位指数位 + 52位尾数位

-128-127

 1.浮点数类型均为有符号
 2.float 6-8位有效数字、double 12-14位有效数字

进制转换


1.二进制,八进制,十六进制转十进制:
   对应位*对应的的权值再求和
2.十进制 -> 二进制、八进制、十六进制:
   (1) 十进制数除以进制数得到的余数逆序排列
   (2)100=64+32+4  ->0110 0100
3.二进制 <->八进制
    三位二进制对应一位八进制
    101 010 <->52 
4.二进制<->十六进制
    四位二进制对应一位十六进制
    1001 0100 <->94


数在内存中的存储:

正数:100      1100100
    负数:-100     1011100
    
    负数在内存中存储:
        1.先获得原码(去掉符号位,数字对应的二进制形式)
        2.获得反码 (原码取反)
        3.获得补码(反码+1)
        4.获得内存中的值(符号位+补码)

程序在计算机内部如何运行:


    存储器:
        1.内存 
            读写速度快
            价格昂贵
            掉电数据丢失

        2.外存
            读写速度慢
            价格便宜
            掉电数据不丢失 
            外存存储文件 

    a.out是存放在外存中的一个文件
    ./a.out时将该文件加载到内存中运行,内存负责与CPU交互执行代码内的运算处理

计算机内存的存储单位:


    1 bit
    1 byte == 8 bit
    1 kb   == 1024 byte
    1 mb   == 1024 kb 
    1 gb   == 1024 mb
    1 tb   == 1024 gb

学习感悟:第二天比第一天感觉内容更多了,而且学到了以前学习c语言时没有注意到的东西,感觉现在的学习就是对以前知识的扫盲

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值