eax ax ah al
来源:互联网 发布:少女前线mac 10和蝎式 编辑:程序博客网 时间:2024/04/28 23:30
; 初始化 32 位代码段描述符
xor eax, eax
mov ax, cs
shl eax, 4
add eax, LABEL_SEG_CODE32
mov word [LABEL_DESC_CODE32 + 2], ax
shr eax, 16
mov byte [LABEL_DESC_CODE32 + 4], al
xor eax, eax
mov ax, cs
shl eax, 4
add eax, LABEL_SEG_CODE32
mov word [LABEL_DESC_CODE32 + 2], ax
shr eax, 16
mov byte [LABEL_DESC_CODE32 + 4], al
mov byte [LABEL_DESC_CODE32 + 7], ah
“XOR EAX,EAX”语句已经将EAX清零了。然后“MOV AX,CS”将16位的段值从CS复制到AX。“SHL EAX,4”是计算数据段的起始物理地址,所以用了EAX来表示20位的物理地址(没有使用AX表示物理地址是因为AX只有16位)。(注:实模式下的寻址的方式固然还是段:偏移,而且段:偏移还都是16位,但在实模式下却可以使用32位寄存器,如EAX……等,而这里的EAX既不是段值,也不是偏移,而是人工计算出的物理地址,相当于用EAX保存的数据,最后再通过“MOV DWORD[GdtPtr+2],EAX”将EAX中的物理地址送到DS:(OFFSET GdtPtr)+2表示的逻辑地址处。)
00000000 00000000 00000000 00000000|===============EAX===============|---32个0,4个字节,2个字,1个双字 |======AX=======|---16个0,2个字节,1个字 |==AH===|-----------8个0,1个字节 |===AL==|---8个0,1个字节
AX,AH,ALAH是AX的高8位,AL是AX的低8位AX是EAX的低16位
0 0
- eax ax ah al
- 007-寄存器EAX与AX,AH,AL关系
- EAX
- AL寄存器中产生的进位不会存储在AH中
- AL
- 我说在某些主板上int 13;AH = 02H,返回值AL等于0你信吗?
- AX 2009 Report sevcie部署错误:Problems when deploying Report Projects - AL.exe
- 8086汇编语言 在debug中mov al,'a'或者mov ax,'ab'错误的
- ax
- [汇编题]将ax中的16位数分成四组,每组四位,分别放入al,bl,cl,dl中
- 80x86汇编:将AL中的8位无符号数转换为压缩型BCD数放入AX
- 关于 TEST EAX,EAX
- TEST EAX,EAX问题
- test eax,eax
- test eax,eax
- xorl %eax, %eax
- test eax,eax
- xor eax,eax
- CodeForces 446A DZY Loves Sequences(DP)
- Android学习笔记之五-WebView的使用
- hadoop学习资源
- 关于vs编译cesium出错问题
- Android调用相机和相册获取图片并存入数据库(反思)
- eax ax ah al
- 自己编码
- Android 6.0权限管理的那些事~干货来
- Java中的引用类型分类以及使用场景
- crontab “tput: No value for $TERM and no -T specified ” error logged by CRON process
- WebApi系列~通过HttpClient来调用Web Api接口
- leetcode_27. Remove Element 不允许创建新列表,直接在列表原地删除指定元素
- ExtJs_Ext.form.CompositeField讲解
- Json与List的相互转换