⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 optab.c

📁 这是一个同样来自贝尔实验室的和UNIX有着渊源的操作系统, 其简洁的设计和实现易于我们学习和理解
💻 C
📖 第 1 页 / 共 2 页
字号:
#include	"l.h"uchar	ynone[] ={	Ynone,	Ynone,	Zlit,	1,	0};uchar	ytext[] ={	Ymb,	Yi32,	Zpseudo,1,	0};uchar	ynop[] ={	Ynone,	Ynone,	Zpseudo,1,	Ynone,	Yml,	Zpseudo,1,	Ynone,	Yrf,	Zpseudo,1,	Yml,	Ynone,	Zpseudo,1,	Yrf,	Ynone,	Zpseudo,1,	0};uchar	yxorb[] ={	Yi32,	Yal,	Zib_,	1,	Yi32,	Ymb,	Zibo_m,	2,	Yrb,	Ymb,	Zr_m,	1,	Ymb,	Yrb,	Zm_r,	1,	0};uchar	yxorl[] ={	Yi8,	Yml,	Zibo_m,	2,	Yi32,	Yax,	Zil_,	1,	Yi32,	Yml,	Zilo_m,	2,	Yrl,	Yml,	Zr_m,	1,	Yml,	Yrl,	Zm_r,	1,	0};uchar	yaddl[] ={	Yi8,	Yml,	Zibo_m,	2,	Yi32,	Yax,	Zil_,	1,	Yi32,	Yml,	Zilo_m,	2,	Yrl,	Yml,	Zr_m,	1,	Yml,	Yrl,	Zm_r,	1,	0};uchar	yincb[] ={	Ynone,	Ymb,	Zo_m,	2,	0};uchar	yincl[] ={	Ynone,	Yrl,	Z_rp,	1,	Ynone,	Yml,	Zo_m,	2,	0};uchar	ycmpb[] ={	Yal,	Yi32,	Z_ib,	1,	Ymb,	Yi32,	Zm_ibo,	2,	Ymb,	Yrb,	Zm_r,	1,	Yrb,	Ymb,	Zr_m,	1,	0};uchar	ycmpl[] ={	Yml,	Yi8,	Zm_ibo,	2,	Yax,	Yi32,	Z_il,	1,	Yml,	Yi32,	Zm_ilo,	2,	Yml,	Yrl,	Zm_r,	1,	Yrl,	Yml,	Zr_m,	1,	0};uchar	yshb[] ={	Yi1,	Ymb,	Zo_m,	2,	Yi32,	Ymb,	Zibo_m,	2,	Ycx,	Ymb,	Zo_m,	2,	0};uchar	yshl[] ={	Yi1,	Yml,	Zo_m,	2,	Yi32,	Yml,	Zibo_m,	2,	Ycl,	Yml,	Zo_m,	2,	Ycx,	Yml,	Zo_m,	2,	0};uchar	ytestb[] ={	Yi32,	Yal,	Zib_,	1,	Yi32,	Ymb,	Zibo_m,	2,	Yrb,	Ymb,	Zr_m,	1,	Ymb,	Yrb,	Zm_r,	1,	0};uchar	ytestl[] ={	Yi32,	Yax,	Zil_,	1,	Yi32,	Yml,	Zilo_m,	2,	Yrl,	Yml,	Zr_m,	1,	Yml,	Yrl,	Zm_r,	1,	0};uchar	ymovb[] ={	Yrb,	Ymb,	Zr_m,	1,	Ymb,	Yrb,	Zm_r,	1,	Yi32,	Yrb,	Zib_rp,	1,	Yi32,	Ymb,	Zibo_m,	2,	0};uchar	ymovl[] ={	Yrl,	Yml,	Zr_m,	1,	Yml,	Yrl,	Zm_r,	1,	Yi0,	Yrl,	Zclr,	1+2,//	Yi0,	Yml,	Zibo_m,	2,	// shorter but slower AND $0,dst	Yi32,	Yrl,	Zil_rp,	1,	Yi32,	Yml,	Zilo_m,	2,	Yiauto,	Yrl,	Zaut_r,	2,	0};uchar	ym_rl[] ={	Ym,	Yrl,	Zm_r,	1,	0};uchar	yrl_m[] ={	Yrl,	Ym,	Zr_m,	1,	0};uchar	ymb_rl[] ={	Ymb,	Yrl,	Zm_r,	1,	0};uchar	yml_rl[] ={	Yml,	Yrl,	Zm_r,	1,	0};uchar	yrl_ml[] ={	Yrl,	Yml,	Zr_m,	1,	0};uchar	yml_mb[] ={	Yrb,	Ymb,	Zr_m,	1,	Ymb,	Yrb,	Zm_r,	1,	0};uchar	yml_ml[] ={	Yrl,	Yml,	Zr_m,	1,	Yml,	Yrl,	Zm_r,	1,	0};uchar	ydivl[] ={	Yml,	Ynone,	Zm_o,	2,	0};uchar	ydivb[] ={	Ymb,	Ynone,	Zm_o,	2,	0};uchar	yimul[] ={	Yml,	Ynone,	Zm_o,	2,	Yi8,	Yrl,	Zib_rr,	1,	Yi32,	Yrl,	Zil_rr,	1,	0};uchar	ybyte[] ={	Yi32,	Ynone,	Zbyte,	1,	0};uchar	yin[] ={	Yi32,	Ynone,	Zib_,	1,	Ynone,	Ynone,	Zlit,	1,	0};uchar	yint[] ={	Yi32,	Ynone,	Zib_,	1,	0};uchar	ypushl[] ={	Yrl,	Ynone,	Zrp_,	1,	Ym,	Ynone,	Zm_o,	2,	Yi8,	Ynone,	Zib_,	1,	Yi32,	Ynone,	Zil_,	1,	0};uchar	ypopl[] ={	Ynone,	Yrl,	Z_rp,	1,	Ynone,	Ym,	Zo_m,	2,	0};uchar	yscond[] ={	Ynone,	Ymb,	Zo_m,	2,	0};uchar	yjcond[] ={	Ynone,	Ybr,	Zbr,	1,	0};uchar	yloop[] ={	Ynone,	Ybr,	Zloop,	1,	0};uchar	ycall[] ={	Ynone,	Yml,	Zo_m,	2,	Ynone,	Ybr,	Zcall,	1,	0};uchar	yjmp[] ={	Ynone,	Yml,	Zo_m,	2,	Ynone,	Ybr,	Zjmp,	1,	0};uchar	yfmvd[] ={	Ym,	Yf0,	Zm_o,	2,	Yf0,	Ym,	Zo_m,	2,	Yrf,	Yf0,	Zm_o,	2,	Yf0,	Yrf,	Zo_m,	2,	0};uchar	yfmvdp[] ={	Yf0,	Ym,	Zo_m,	2,	Yf0,	Yrf,	Zo_m,	2,	0};uchar	yfmvf[] ={	Ym,	Yf0,	Zm_o,	2,	Yf0,	Ym,	Zo_m,	2,	0};uchar	yfmvx[] ={	Ym,	Yf0,	Zm_o,	2,	0};uchar	yfmvp[] ={	Yf0,	Ym,	Zo_m,	2,	0};uchar	yfadd[] ={	Ym,	Yf0,	Zm_o,	2,	Yrf,	Yf0,	Zm_o,	2,	Yf0,	Yrf,	Zo_m,	2,	0};uchar	yfaddp[] ={	Yf0,	Yrf,	Zo_m,	2,	0};uchar	yfxch[] ={	Yf0,	Yrf,	Zo_m,	2,	Yrf,	Yf0,	Zm_o,	2,	0};uchar	ycompp[] ={	Yf0,	Yrf,	Zo_m,	2,	/* botch is really f0,f1 */	0};uchar	ystsw[] ={	Ynone,	Ym,	Zo_m,	2,	Ynone,	Yax,	Zlit,	1,	0};uchar	ystcw[] ={	Ynone,	Ym,	Zo_m,	2,	Ym,	Ynone,	Zm_o,	2,	0};uchar	ysvrs[] ={	Ynone,	Ym,	Zo_m,	2,	Ym,	Ynone,	Zm_o,	2,	0};Optab optab[] =/*	as, ytab, andproto, opcode */{	{ AXXX },	{ AAAA,		ynone,	Px, 0x37 },	{ AAAD,		ynone,	Px, 0xd5,0x0a },	{ AAAM,		ynone,	Px, 0xd4,0x0a },	{ AAAS,		ynone,	Px, 0x3f },	{ AADCB,	yxorb,	Pb, 0x14,0x80,(02),0x10,0x10 },	{ AADCL,	yxorl,	Px, 0x83,(02),0x15,0x81,(02),0x11,0x13 },	{ AADCW,	yxorl,	Pe, 0x83,(02),0x15,0x81,(02),0x11,0x13 },	{ AADDB,	yxorb,	Px, 0x04,0x80,(00),0x00,0x02 },	{ AADDL,	yaddl,	Px, 0x83,(00),0x05,0x81,(00),0x01,0x03 },	{ AADDW,	yaddl,	Pe, 0x83,(00),0x05,0x81,(00),0x01,0x03 },	{ AADJSP },	{ AANDB,	yxorb,	Pb, 0x24,0x80,(04),0x20,0x22 },	{ AANDL,	yxorl,	Px, 0x83,(04),0x25,0x81,(04),0x21,0x23 },	{ AANDW,	yxorl,	Pe, 0x83,(04),0x25,0x81,(04),0x21,0x23 },	{ AARPL,	yrl_ml,	Px, 0x63 },

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -