8088中最长的字节指令是什么? [英] What is the longest byte instruction possible in 8088?

查看:103
本文介绍了8088中最长的字节指令是什么?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在为8088做一个简约的汇编器.我想知道什么是最长的字节指令组合?

I'm making a minimalistic assembler for 8088. I would like to know what is the longest possible byte instruction combination?

此刻,我发现的最长指令是6个字节.

At the moment, the longest instruction I found is 6 bytes.:

add word [0134], 0032

翻译为

81 06 34 01 32 00

是否有超过6个字节的内容?

Is there anything longer than 6 bytes?

还有一个疑问,我完全理解除了第4个字节外的全部6个字节.

Also a Sidequestion, I understand the whole 6 bytes completely except for the 4th byte.

例如:

第一个字节表示:立即数加上16位

1st byte means: add with 16bit of immediate data

第二个字节表示:基本指针+位移命令

2nd byte means: Base pointer + displacement command

第3个字节表示:位移

5-6字节表示:16位数据

5-6 byte means: the 16bit data

但是我不知道第4个字节是什么意思,特别是"1"值.

But I have no idea what does the 4th byte means, specifically the "1" value.

那是什么意思?

推荐答案

对于已经确定的字长算术类型函数,8088支持的最长字节为4个字节.这些4字节指令不包含您建议的第3字节位移. "1"指的是前1个字节的尾随位,而不是其本身的整个字节.

The longest byte the 8088 supports is 4-bytes for word size arithmetic type functions that you've already identified. These 4-byte instructions do not contain the 3rd byte displacement you suggest. The '1' refers to the trailing bit of the first 1 byte, not an entire byte in itself.

参考: 8088数据表-第26-30页

这篇关于8088中最长的字节指令是什么?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆