HJ汇编第一章到第三章

第一章到第三章(CPU架构没写看书第二章)

1.进制表示

二进制0010B  十进制 2  十六进制 2H

2.汇编是低级语言,计算机能直接识别与执行。但不是最低级的,下面还有机器码

3.进制转换   不多讲,说一下有小数的进制转换吧

例:10100001.110B=()H             我喜欢二转十,十转十六

10100001.110B=1*2^0+1*2^5+1*2^7+1*2^(-1)+1*2^(-2)=1+32+128+0.5+0.25=161.75

=10*16^1+1*16^0+12*16^(-1)=0A1.CH

0.75=3/4=12/16=12*16^(-1)

4.16进制的格式  头位为字母是,前面加0

正确:0A1H    错误:A1H        3022H+8086H=0B0A8H    8086H-2028H=605EH

二进制一般就是4个数一组。0010B

5.原码、反码、补码

正整数的原码,反码,补码都是一样的,也都与无符号数的编码一样

5  原码: 00000101B    反码   00000101B   补码   00000101B

-5 原码:10000101B     反码    11111010B   补码11111011B  (补=反+1)

6.ASCLL码

65-90对应 A-Z   97-122对应 a-z     48-57对应0-9

7.寄存器

通用寄存器:E开头为32位;H,L结尾为8位,其他为16为

标志寄存器

8.逻辑地址与物理地址

逻辑地址1000H:0000H   物理地址10000H    逻辑转物理:1000H*10H+0000H=10000H

物理地址求段基地址(DS)与偏移地址(IP)的范围:

例0B0005H  

当偏移地址最小时段基地址最大。(物理地址-偏移地址的结果必须能被10整除)

偏移最小为0005H   段基最大为 (0B0005H-0005H)/10H=0B000H

偏移最小为FFF5H  段基最小为(0B0005H-FFF5H)/10H=0A001H

9.debug常用6命令   t r u e a d    (自行在dosbox测试)

10.汇编语言的程序结构

DATA SEGMENT
	DA1 DB 4
	DA2 DB 6     //数据段
DATA ENDS

CODE SEGMENT
	ASSUME	CS:CODE, DS:DATA    //定义CS指向代码段,DS指向数据段
START:
	MOV AX,DATA                    //代码段
	MOV DS,AX
	MOV AL,DA1
	INC AL
	MOV DA1,AL
	MOV AL,10
	SUB AL,DA2
	MOV AH,4CH         //代码结束必须加上最后这两行,相当于return 0;
	INT 21H

CODE ENDS
	END START

代码写在一个1.asm的文件中(放入masm文件中)

编译过程 masm 1.asm   输入你想要的文件名如first   然后回车几次  会生成一个first.obj文件

link first.obj 输入你想要的文件名如first 然后回车几次  会生成一个first.exe文件

debug first.exe进入调试模式。就可以用debug命令操作了。用T命令让程序单步执行代码。  

  • 9
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值