首页 > 编程语言 > 详细

[课堂小笔记]汇编语言

时间:2020-02-22 09:38:21      阅读:61      评论:0      收藏:0      [点我收藏+]

本来写了一段又觉得太简单了好像没什么写的必要,上完今天这课头真的晕了,还是记录一下,不然以后头又晕了看都看不懂老师在说什么。

 

第一章

> 第一节课 汇编语言基础

进制怎么转换就省略了。一些基本概念——

位 - bit,数据存储最小单位,两种状态——0和1;

字节 - byte,每8个bit组成一个byte,存放一个8位二进制数,CPU读写内存或外设的基本单位。

 

对于一个8位二进制数,如果是无符号数,则表示范围为0~255(2 ^ 8 - 1);如果是有符号数:

1、最高位表示符号,0为正,1为负;

2、表示范围为-127(1111 1111)~127(0111 1111);

3、先看原码、反码、补码给出的概念

原码:可以理解为真值的绝对值(?)

反码:x > 0时,同等于原码;x < 0时,除符号位全部取反。

补码:x > 0时,同等于反码;x < 0时,在反码基础上+1。

特殊情况:0的原码和反码不是唯一的,分为+0和-0;但补码唯一,即0000 0000;

初看这概念就很奇怪,也不好记忆,但也没想太多。

然后今天老师说“如果是有符号数,表达式中的数就是补码”,就很懵,为什么?补码有什么特权吗?

带哲学家bebe说过,电脑里只存在补码这一种存储方式,也就是说原码、反码纯粹只是为了求出补码二弄出来的东西,本身没有实际用处。

而后我看了篇关于这个的回答,有点恍然大明白的感觉。

一个很不错的理解,用于给出补码求原值:

无视符号位说法,直接看成无符号型,即0~255范围;如果 0 <= x补 <= 127(0111 1111),x = x补;如果 128(1000 0000) <= x补 <= 255(1111 1111), x = x补 - 256(也就是符号位取1表负数)

 

二、第二章

 

[课堂小笔记]汇编语言

原文:https://www.cnblogs.com/jinkun113/p/12343867.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!