27、深入理解汇编语言中的位、标志、分支和表

深入理解汇编语言中的位、标志、分支和表

1. 十六进制字符串写入

在汇编中,将十六进制数字写入字符串时,可使用三部分的内存地址。假设最高有效十六进制数字在 BL 中,最低有效十六进制数字在 AL 中,将这两个十六进制数字写入 HexString 的代码如下:

mov byte [HexStr+edx+2],al ; 将最低有效位字符数字写入行字符串
mov byte [HexStr+edx+1],bl ; 将最高有效位字符数字写入行字符串

这里, HexStr 是字符串的起始地址, EDX 包含给定条目中第一个字符的偏移量。要获取条目的地址,需将 HexStr EDX 相加。不过,这个地址是条目中第一个字符的地址,在 HexStr 中该字符通常是空格。条目中最低有效位数字的位置是条目偏移量加 2,最高有效位数字的位置是条目偏移量加 1。

2. 跳转指令概述

跳转指令用于改变指令执行的流程。通常,指令按顺序从低内存向高内存依次执行,而跳转指令可以改变下一条要执行指令的地址,使程序执行突然跳转到其他位置。跳转指令可分为无条件跳转和有条件跳转。

3. 无条件跳转

无条件跳转指令总是会执行跳转操作,其格式为:

jm
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值