码迷,mamicode.com
首页 > 其他好文 > 详细

疯狂补汇编1

时间:2018-06-24 00:55:46      阅读:163      评论:0      收藏:0      [点我收藏+]

标签:字节   lin   数据运算   问题   att   答案   要求   基础知识   bsp   

panelatta先生说刘慧婷的书就是个用户文档。。。。。

于是我决定摸索一个快速学习用户文档的流程用以自救。。

看一下目录:

1基础知识部分

2寻址方式

3常用指令系统

4伪指令

5分支循环

6子程序设计

7宏的1.2

学习方式基本上是不断提出问题然后搜索答案,同时用费曼方法理清这是怎么一回事。

以能做出任选的课后题为标准。

  1.常用指令系统

目录如下:

  1. 数据传送指令

  2. 算数运算指令

  3. 逻辑与位移指令

  4. 串操作指令

       5.程序转移指令

  (1)数据传送指令

一。mov  不能从内存转移到内存。源与目的长度明确并一致。目的不能是CS或IP。段寄存器的值只能由非段寄存器传递。

二。push,pop。push sth ss:sp是栈顶指针,入栈时sp要减2(两个字节)?pop是加2,pop到目的操作数。

三。xchg ,要求是交换的双方长度一致,不能在内存中交换。

  (2)算数运算指令

机械内部的具体运算过程是怎样的?

切入基础知识部分。

1.8位1字节,几位一字就是几位计算机。

2.进制转换:<-除2取余,乘2取整->

3.无符号表示法,存2n-1个数(有一个0),溢出就是轮回来。

符号加绝对值:最左位0是正数,1是负数。2n-1-1范围,有正零和负零。正数溢出1变-0.负数在正数的右边。

4.二进制补码表示法:

负数在正数的左边。只有一个零。1111-0000,-1用大的数字表示。转换为2进制之后负数会被转换为补码,正数不变。

取补码的方法:从右到左,把第一个1以后的位数取反。

补码的正数溢出变成最负,负数变最正。

5。浮点表示法:

符号+位移量+定点数。

过程:把数字转换为科学计数法表示的2进制数。

余127码:1+8+23  32位  余1023码:1+11+52  64位

  符号+(指数+127)+小数部分。

6 .数据运算

汇编书上的方法是负数转换成补码,然后和正数以2进制相加。然后看看符号位是否进位,是否向符号位进位。如果状态相同,则不溢出,否则溢出。

疯狂补汇编1

标签:字节   lin   数据运算   问题   att   答案   要求   基础知识   bsp   

原文地址:https://www.cnblogs.com/pornhub/p/9219057.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!