c 语言第二天作业

1、什么是原码、反码、补码?

原码:‌原码是最直接的表示方法,‌其中最高位表示符号位(‌0表示正数,‌1表示负数)‌,‌其余位表示数值的绝对值。‌例如,‌+5的原码是00000101,‌-5的原码是10000101。‌原码的优点是表示直观,‌但在进行加法和减法运算时存在问题。‌

反码:‌为了解决原码的加法和减法问题,‌引入了反码表示。‌在反码中,‌正数的反码与其原码相同,‌负数的反码是将其原码的每位取反(‌0变1,‌1变0)‌。‌例如,‌+5的反码是00000101,‌-5的反码是11111010。‌尽管反码解决了加法问题,‌但仍然存在溢出和零的表示问题。‌

补码:‌为了彻底解决加法和表示问题,‌引入了补码表示。‌在补码中,‌正数的补码与其原码相同,‌负数的补码是将其原码的每位取反后再加1。‌例如,‌+5的补码是00000101,‌-5的补码是11111011。‌补码表示的优势在于它允许用相同的方式处理正数和负数,‌以及能够在数字的范围内进行循环运算,‌而无需额外的处理。‌因此,‌在大多数计算机体系结构中,‌补码表示被广泛采用用于带符号整数的表示和运算。‌

2、为什么要有这几个?

原码、‌反码、‌补码的存在是为了解决计算机做减法和引入符号位的问题。‌

原码、‌反码、‌补码是计算机内部表示和处理数值的方法,‌它们的存在主要是为了解决计算机在处理带有符号的数值运算时的特殊需求。‌这些表示方法各有特点,‌但它们共同的目标是为了简化计算机内部电路的设计和运算过程。‌

3、原码、反码、补码之间的转换关系

C语言中三类标识符

一.关键字:

1.auto

2.break

3.case

4.char

5.const

6.continue

7.default

8.do

9.double

10.else

11.enum

12.extern

13.float

14.for

15.goto

16.if

17.int

18.long

19.register

20.return

21.short

22.singned

23.sizeof

24.static

25.struct

26.switch

27.typedef

28.union

29.unsigned

30.void

31.volatile

32.while

二.系统预定义的标识符:如系统提供的库函数名sin printf main及预编译命令define include等;

三.用户标识符:用户定义的标识符,用来给程序中的变量,自定义函数,符号常量,数组 ,结构体,共用体,文件等命名。

相关推荐
一只大袋鼠3 小时前
Redis 安装+基于短信验证码登录功能的完整实现
java·开发语言·数据库·redis·缓存·学习笔记
※DX3906※4 小时前
Java排序算法--全面详解面试中涉及的排序
java·开发语言·数据结构·面试·排序算法
笨笨马甲5 小时前
Qt QSS使用指南
开发语言·qt
We་ct6 小时前
LeetCode 77. 组合:DFS回溯+剪枝,高效求解组合问题
开发语言·前端·算法·leetcode·typescript·深度优先·剪枝
格林威6 小时前
工业相机图像高速存储(C#版):内存映射文件方法,附Basler相机C#实战代码!
开发语言·人工智能·数码相机·c#·机器视觉·工业相机·堡盟相机
Nuopiane6 小时前
MyPal3(3)
java·开发语言
lihihi6 小时前
P1650 [ICPC 2004 Shanghai R] 田忌赛马(同洛谷2587)
开发语言·算法·r语言
阿蒙Amon6 小时前
C#常用类库-详解Autofac
开发语言·c#
爱上妖精的尾巴6 小时前
8-18 WPS JS宏 正则表达式-边界匹配
开发语言·javascript·正则表达式·wps·jsa
格林威6 小时前
工业相机图像高速存储(C#版):内存映射文件方法,附堡盟相机C#实战代码!
开发语言·人工智能·数码相机·计算机视觉·c#·工业相机·堡盟相机