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

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

相关推荐
科技道人7 小时前
记录 默认置灰/禁用 app ‘Search Engine Selector‘ 的disable按钮
开发语言·前端·javascript
逝水无殇9 小时前
C# 异常处理详解
开发语言·后端·c#
玖玥拾11 小时前
C# 语言进阶(十五)C# 游戏服务端 MySQL 数据库
服务器·开发语言·网络·数据库·mysql·c#
铅笔侠_小龙虾11 小时前
Rust 学习目录
开发语言·学习·rust
云泽80811 小时前
从零吃透 C++ 异常:抛出捕获、栈展开、异常重抛与编码规范详解
开发语言·c++·代码规范
灯澜忆梦12 小时前
GO---可见性规则
开发语言·golang
逝水无殇12 小时前
C# 文件的输入与输出详解
开发语言·数据库·后端·c#
这是个栗子13 小时前
前端开发中的常用工具函数(八)
开发语言·前端·javascript
凤凰院凶涛QAQ13 小时前
《Java版数据结构 & 集合类剖析》栈与队列:“push/pop 是栈的灵魂,offer/poll 是队列的骨架——四组 API,两种人生”
java·开发语言·数据结构
研☆香13 小时前
为什么变量声明在赋值前也能使用?—— 深入理解 JavaScript 变量提升与作用域
开发语言·前端·javascript