首页 > 编程语言 >C语言程序设计(进阶)

C语言程序设计(进阶)

时间:2024-09-19 20:49:04浏览次数:10  
标签:存储 进制 反码 字节 补码 C语言 程序设计 原码 进阶

肆意张扬的我们都不会是烂尾的诗集。

2.整型在内存中的存储

我们之前讲过一个变量的创建是要在内存中开辟空间的。空间的大小是根据不同类型而决定的。

2.1原码、反码、补码

数值有不同的表现形式:2进制、8进制、10进制、16进制

其中整数的2进制表示也有三种形式:原码、反码、补码

三种表示方法均有符号位和数值位两部分

(正整数,原码、反码、补码相同;负整数,原码、反码、补码是需要计算的)

整数在内存中存放的是补码的二进制序列:

在计算机系统中,数值一律用补码来表示和储存。原因在于,使用补码,可以将符号位和数值域统一处理;同时,加法和减法也可以统一处理(CPU只有加法器)。此外,补码与原码相互转换,其运算过程是相同的,不需要额外的硬件电路。

负整数的原码取反加一可以得到补码,而补码取反加一也可以得到原码。

2.2两种存储

大端字节序存储:

把一个数据的高位字节序的内容存放在低地址处,把低位字节序的内容放在高地址处,就是大端字节序存储。

小端字节序:

把一个数据的高位字节序的内容存放在高地址处,把低位字节序的内容放在低地址处,就是大端字节序存储。

·请简述大端字节序和小端字节序的概念,设计一个小程序来判断当前机器的字节序

标签:存储,进制,反码,字节,补码,C语言,程序设计,原码,进阶
From: https://blog.csdn.net/2402_85207276/article/details/142368749

相关文章

  • C语言程序设计(进阶)
    行到水穷处,坐看云起时。中秋快乐呀!数据在内存中的存储1.数据类型的介绍(1)基本的内置类型:·char       //字符数据类型·short     //短整型·int        //整型·long       //长整型·longlong  //更长的整......
  • SQL进阶查询
    前置知识默认你已经掌握了基础的SQL使用,本文为复杂SQL查询编写。需求场景限制条数限制结果为10条SELECT*FROMtable_nameLIMIT10;跳过前5条,返回接下来的10条SELECT*FROMtable_nameLIMIT5,10;添加条件基本格式SELECT<列名>FROM<表名>WHERE<条件......
  • c语言 宏的一些深层应用(##,#,宏函数)
    "##"宏拼接#defineCONCATENATE(a,b)a##bCONCATENATE(student_,1) //将a和b拼接起来变成一个新的变量->student_1#defineCONS(a,b)int(a##e##b)CONS(2,3) //将aeb拼接起来->2e3==2000"#"转换为字符串#defineCONCATENATE(a,b)a##b#defineSTR......
  • 【C语言】联合体&&枚举的讲解
    目录✨声明!!!:联合体与结构体只有一个区别,那就是内存存储方式不同......
  • JAVA进阶-枚举,类加载器,反射
    day15-枚举,类加载器,反射枚举为什么有枚举为了简洁的表示一些固定的值,Java就给我们提供了枚举。定义格式是指将变量的值一一列出来,变量的值只限于列举出来的值的范围内。格式publicenums{ 枚举项1,枚举项2,枚枚举项3;}定义枚举类要用关键字enum定义......
  • 2024Mysql And Redis基础与进阶操作系列(6)作者——LJS[含MySQL 多表之一对一/多;多对多;
    MySQL多表操作1多表关系简介1.1一对一关系比如1.2一对多/多对一关系比如:实现规则:1.3多对多关系举例:规则:2.多表联合查询简介多表查询有以下分类知识补充——笛卡尔积(了解即可)交叉连接查询[产生笛卡尔积]内连接查询(使用的关键字innerjoin--inner可以省......
  • 2024Mysql And Redis基础与进阶操作系列(5)作者——LJS[含MySQL DQL基本查询:select;简单
    目录1MySQL数据库基本操作-DQL-基本查询1.2SQL概述1.3SQL类2.SQL语言的规则与规范2.1基本规则2.2SQL大小写规范推荐采用统一的书写规范:2.3注释2.4命名规则(了解即可)举例:两句是一样的,不区分大小写创建表格order使用``飘号,因为order和系统关键字或系统函数名......
  • Java语言程序设计基础篇_编程练习题**18.31 (替换单词)
    目录题目:**18.31(替换单词)习题思路代码示例 运行结果替换前替换后题目:**18.31(替换单词) 编写一个程序,递归地用一个新单词替换某个目录下的所有文件中出现的某个单词。从命令行如下传递参数:javaExercise18_31dirNameoldWordnewWord习题思路(读取路径方......
  • 2024Mysql And Redis基础与进阶操作系列(4)作者——LJS[含MySQL FOREIGN KEY、CHECK 、D
    接上集1.FOREIGNKEY约束1.1作用限定某个表的某个字段的引用完整性。例如:员工表的员工所在部门的选择,必须在部门表能找到对应的部分。1.2关键字FOREIGNKEY1.3主表和从表/父表和子表主表(父表):被引用的表,被参考的表从表(子表):引用别人的表,参考别人的表例如:员工表的员工所在部门这......
  • C语言指针进阶笔试题(含解析)
    笔试题1:intmain(){ inta[5]={1,2,3,4,5}; int*ptr=(int*)(&a+1); printf("%d,%d",*(a+1),*(ptr-1)); return0;} 解析:*(a+1),a是首元素的地址,加1之后就是第二个元素的地址,解引用就是2。ptr是&a+1,取出的是整个数组的地址,加1跳过整个数组:强转为int......