数据结构---浮点数的存储&无符号数

1、c语言中的数据类型

                    整数类型            
            基本类型                    
                    浮点类型            

                    数组类型            

            构造类型    结构体类型           
c语言数据类型                         
                    共用体(联合)         


            指针类型                    

            空类型(void)       函数执行完不需要结果时         

2、学习数据类型三要素

    (1)存储数据的宽度                          

    (2)存储数据的格式                          

    (3)作用范围(作用域)                            

3、整数类型

:char short int long 汇编中

        char    8bit    1字节 byte                

        short   16bit   2字节 word                

        int     32bit   4字节 dword               

       long   32bit    4字节       历史遗留问题             

在反汇编中观察,体验数据宽度的概念

    char  cTemp = 0xFF;         0xFF                
    short sTemp = 0xFF;         0x00FF              
    int   nTemp = 0xFF;         0x0000 00FF             

    char  cTemp = 0x12345678;           0x78                
    short sTemp = 0x12345678;           0x5678              
    int   nTemp = 0x12345678;           0x1234 5678             


    char == 257 试试      内存中存的1                  
    char == 256                         

    “初始化”: 截断常量值                 warning            
    “初始化”: 从“int”到“char”截断       C4309          

整数类型分为有符号(signed)和无符号(unsigned)                             

    类型转换、比较大小和数学运算                          

    **总结:                           
    1.在内存中存储的完全一样                           
    2.在做运算的时候需要注意,你把它当什么就是什么,结果完全不同**                           
 89: void Test()                                
        90: {                               
          96:   char cTemp  = 0xFF;
004118BE  mov         byte ptr [cTemp],0FFh  
    97:     short sTemp = 0xFF;
004118C2  mov         eax,0FFh  
004118C7  mov         word ptr [sTemp],ax  
    98:     int nTemp   = 0xFF;
004118CB  mov         dword ptr [nTemp],0FFh  
    99:     printf("%d\n%d",cTemp,sTemp);
004118D2  movsx       eax,word ptr [sTemp]  
004118D6  mov         esi,esp  
004118D8  push        eax  
004118D9  movsx       ecx,byte ptr [cTemp]  
004118DD  push        ecx  
004118DE  push        41685Ch  
004118E3  call        dword ptr ds:[41A2BCh]  
004118E9  add         esp,
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值