汇编语言学习笔记(四)

1、寄存器:

1、通用寄存器:AX,BX,CX,DX

——存放数据,最大容量FFFFH(16bit寄存器)
——可以分割成高八 AH 低八 AL 两个寄存器


为什么能分割?

CPU最低读取单位为字节 8bit,且 8086 的寄存器为 16 位寄存器,

  8086 CPU 可以处理 两种尺寸的数据:

字: 1Byte 8bit, 8 位寄存器

字节: 2Byte 16bit,16 位寄存器,

其中高位字节存储在高八位 register

低位字节存储在低八位 register


几条不知道干什么的指令 dosbox 中-debug:

  • -a
  • -t
  • -r


为了熟悉通用寄存器、16 位数据、高八低八寄存器和8位寄存器做了一些测试
输入 :

mov ax,5

mov ax,0 
mov al,5


mov ax,4E20H 
mov bx,ax 
mov ch,bl 
mov ax,bl

 

感悟:

  寄存器和寄存器之间的操作位数要一致,
  寄存器与数据之间位数也要一致

测试二:

mov ax, ffff
mov bx, 1
mov ah, ch
mov al, dl
add dl, bl
add ch, dh
add ax, bx


感悟:

  当低八位出现溢出时,溢出的数据将不知所踪,总之不是丢失
  当高八位数据溢出时也一样,

  16位运算的溢出情况与高八位相同


疑问:乘方运算如何实现
  四行汇编实现2^4计算:

mov ax, 2
add ax, ax
add ax, ax
add ax, ax

 

posted @ 2020-02-24 21:02  秦_殇  阅读(147)  评论(0编辑  收藏  举报