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等;

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

相关推荐
浪子明X3 小时前
十六位账本怎样发现传输差错:Internet Checksum 生活类比
开发语言
xiangyun616 小时前
【408数据结构 08】队列:循环队列判空判满,408年年考,一次讲清
c语言·开发语言·数据结构·c++·算法
xiangyun616 小时前
【408数据结构 06】双链表、循环链表、静态链表
c语言·开发语言·数据结构·c++·算法
白远山7 小时前
家政服务家政社区派单实战:调度系统架构设计与实现指南
java·开发语言·小程序·架构·需求分析
Logic1018 小时前
C语言/数据结构数组题解:数字列表加一(Plus One)——进位处理与数组扩展
c语言·数据结构·模拟·数组·时间复杂度·算法题·进位
Escalating_xu8 小时前
【C语言常见概念】从第一行代码到字符串结束标志:一次打通编译、main、ASCII、转义字符与注释
c语言·c++
DevRay8 小时前
Java 21虚拟线程深度实战:告别线程池焦虑,百万并发吞吐量直接翻倍(原理+代码+避坑)
java·开发语言
Navigator_Z8 小时前
LeetCode //C - 1250. Check If It Is a Good Array
c语言·算法·leetcode
free-elcmacom8 小时前
C++学习<1>程序分区
开发语言·c++
醉颜凉8 小时前
Java 必看:如何彻底避免 HashMap 多线程死循环问题?
java·开发语言