![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
汇编语言学习笔记
lemmon_tree
这个作者很懒,什么都没留下…
展开
-
数据处理的2个基本问题
引言reg(寄存器)的集合包括:ax,bx,cx,dx,ah,al,bh,bl,ch,cl,dh,dl,sp,bp,si,disreg(段寄存器)的集合包括:ds,cs,ss,esbp寄存器的默认段寄存器是ss寻址方式原创 2021-07-18 08:59:17 · 80 阅读 · 0 评论 -
更灵活定位内存地址
7.4ASCII码表ASCII是8位,1个字节就可以存储ASCII占1个字节,Unicode占4个字节ASCII占8位,可以表示2^8=256种不同的内容原创 2021-07-17 15:19:42 · 71 阅读 · 0 评论 -
包含多个段的程序
6.2在代码段中使用栈代码段cs:ip数据段ds:[bx]栈段ss:sp原创 2021-07-14 22:29:27 · 54 阅读 · 0 评论 -
[BX]和loop指令
5.2loop指令loop就是循环指令原创 2021-07-13 22:18:24 · 91 阅读 · 0 评论 -
第一个程序
4.1一个汇编程序从写出到执行的过程源程序经编译连接之后变成机器码原创 2021-07-06 20:51:43 · 67 阅读 · 0 评论 -
内存访问学习
3.1内存中字的存储1字=2字节=16位3.2DS和address8086CPU中的DS寄存器,用来存放要访问数据的段地址。ax,bx,cx,dx是统用寄存器。DS寄存器中存放段地址。mov 寄存器名,内存地址8086CPU不能把数据直接放入段寄存器,即mov ds,1000H是非法的。以下才是合法的。mov ax,1000mov ds,ax...原创 2021-07-04 09:44:22 · 100 阅读 · 0 评论 -
cpu的工作原理
CPU的组成一个CPU由运算器,控制器,寄存器组成。一、通用寄存器8086CPU中所有寄存器都是16位,可存放2个字节。AX,BX,CX,DX是通用寄存器。数据18在AX寄存器中的存储状态16位寄存器中可存放的最大十进制数是2^16-1。AX寄存器(16位)可以分为2类AL: 低8位AH:高8位AL和AH寄存器是2个可以独立使用的8位寄存器字在寄存器中的存储字的英文表示为word一个字宽度为16位,也就是2个字节汇编指令...原创 2021-06-30 20:49:58 · 101 阅读 · 0 评论 -
汇编语言的产生与组成
一、 汇编语言的产生寄存器寄存器是CPU中存储数据的器件,一个CPU中有多个寄存器。二、汇编语言的组成存储器就是内存。磁盘上的数据如果不读到内存中,就无法被CPU使用。CPU对存储器的读写:...原创 2021-06-28 21:36:26 · 336 阅读 · 0 评论 -
2021-06-27
寄存器很小,不够用,所以数据要放在内存中。内存地址计算机中的内存地址很多,需要给每个地址分配一个编号,这些编号就是内存地址。32位电脑的寻址能力是4GB。每个内存地址都有一个编号,可以通过编号往里面存值。内存中如何存值?数据宽度:byte 8位word 16位dword 32位qword 64位寄存器在cpu中。...原创 2021-06-27 22:39:20 · 59 阅读 · 0 评论 -
通用寄存器
一、通用寄存器存储数据:CPU>内存>硬盘cpu分类:32位cpu 8 16 3264位cpu 8 16 32 6432位cpu通用寄存器有8个EAXECXEDXEBXESPEBPESIEDI每个寄存器存值的范围是0-FFFF FFFF。对于二进制来说,直接修改值。计算机如何向寄存器存值mov指令mov 寄存器,值mov 寄存器1,寄存器2...原创 2021-06-27 20:47:59 · 159 阅读 · 0 评论 -
汇编语言学习环境
机器语言就是位运算,是通过电路来实现的,这是计算机最底层的本质。通过机器语言实现加法计算器。设计电路。机器语言就是二进制。汇编语言通过指令,代替二进制编码。通过汇编指令,给计算机发命令,计算机执行。编译器。...原创 2021-06-26 23:04:01 · 83 阅读 · 0 评论 -
位运算的加减乘除
计算机计算4+5#计算机是怎么操作的?0000 01000000 0101-------------(计算机是不会直接进行加操作的)#计算机做加法的原理#第一步:异或。如果不考虑进位,计算机是可以直接出结果的。0000 01000000 0101-------------(异或运算)0000 0001#第二步:与运算(与运算是用来判断进位的,如果运算结果为0,则没有进位)0000 01000000 0101-------------(与运算)0000 0100#第.原创 2021-06-26 22:29:12 · 193 阅读 · 0 评论 -
位运算的理解
看到一个二进制数,先要知道它是有符号数还是无符号数。寄存器,mov 寄存器,值。负数在计算机中是以补码的形式存储的。一、位运算计算机可以用来存储所有的整数。2*8最高效的计算方式最高效的计算方式是位运算。与运算(and)1011 and 0001运算结果为:0001同时为1则结果为1,其余情况结果为0。与运算电路图:或运算(or)只有有一个为1则结果为1,其余结果为0。或运算电路图:异或运算(xor ^)不一样则为1。下图为异或电路图。1011 x原创 2021-06-26 21:47:58 · 265 阅读 · 0 评论 -
有符号数与无符号数
一、有符号数与无符号数无符号数规则这个数字是什么,就是什么。1 0 0 1 1 0 1 0 十六进制:0x9A 十进制:154十六进制是最契合二进制转换规则的。有符号数规则最高位是符号位:1(负数),0(正数)1 0 0 1 1 0 1 0 如何转换?二、原码反码补码编码规则有符号数的编码规则原码最高位是符号位,其它位是正常的数值。反码整数:整数的反码与原码相同。负数:符号位一定是1,其它位对原码取反。补码正数:正数的补码与原码相同。负数:反原创 2021-06-24 23:27:33 · 928 阅读 · 0 评论 -
数据的宽度
计算机,内存。bit:位Byte:字节,宽度为0~0xFF字:宽度为0~0xFFFF双字:宽度为0~0xFFFFFFFF在计算机中,每个数据都要给它定义类型,给它定义宽度,也就是给它定义在内存中的宽度。原创 2021-06-24 22:04:59 · 251 阅读 · 0 评论 -
二进制与十六进制的深层理解
进制二进制八进制十进制十六进制二进制:0 1 10 11 100 101 110 111 1000 1001 1010 1011 1100 1101 1110 1111二进制这么去写,比较麻烦,要进行简写。0 1 2 3 4 5 6 7 8 9 a b c d e f于是十六进制诞生了。二进制与十六进制的对应关系。...原创 2021-06-23 22:50:07 · 255 阅读 · 0 评论 -
汇编语言概述
机器语言是类似0和1之类的代码。为了帮助记忆,发明了助记符,这便是汇编语言。汇编语言示例 加 INC -编译器--> 0100 0000 减 DEC 乘 MUL 除 DIV汇编语言的作用就是,将人能理解的语言转换为机器能理解的语言。汇编语言一般用于底层代码的编写,如单片机。c语言 加 A+B -编译器--> 0100 0000 减 A-B 乘 A*B 除 A/Bc语言,使得代码看起来更加直观。机器语言(二进制语言)-汇编语言-c/c++语言-java语言原创 2021-06-22 21:17:55 · 162 阅读 · 1 评论