亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? decode.c

?? U-boot latest tarball
?? C
?? 第 1 頁 / 共 3 頁
字號:
      case 6:	DECODE_PRINTF("ESI]");	return M.x86.R_ESI * index;      case 7:	DECODE_PRINTF("EDI]");	return M.x86.R_EDI * index;    }    HALT_SYS();    return 0;			/* NOT REACHED OR REACHED ON ERROR */}/****************************************************************************PARAMETERS:mod - MOD value of preceding ModR/M byteRETURNS:Offset in memory for the address decodingREMARKS:Decodes SIB addressing byte and returns calculated effective address.****************************************************************************/unsigned decode_sib_address(    int mod){    int sib   = fetch_byte_imm();    int ss    = (sib >> 6) & 0x03;    int index = (sib >> 3) & 0x07;    int base  = sib & 0x07;    int offset = 0;    int displacement;    switch (base) {      case 0:	DECODE_PRINTF("[EAX]");	offset = M.x86.R_EAX;	break;      case 1:	DECODE_PRINTF("[ECX]");	offset = M.x86.R_ECX;	break;      case 2:	DECODE_PRINTF("[EDX]");	offset = M.x86.R_EDX;	break;      case 3:	DECODE_PRINTF("[EBX]");	offset = M.x86.R_EBX;	break;      case 4:	DECODE_PRINTF("[ESP]");	offset = M.x86.R_ESP;	break;      case 5:	switch (mod) {	  case 0:	    displacement = (s32)fetch_long_imm();	    DECODE_PRINTF2("[%d]", displacement);	    offset = displacement;	    break;	  case 1:	    displacement = (s8)fetch_byte_imm();	    DECODE_PRINTF2("[%d][EBP]", displacement);	    offset = M.x86.R_EBP + displacement;	    break;	  case 2:	    displacement = (s32)fetch_long_imm();	    DECODE_PRINTF2("[%d][EBP]", displacement);	    offset = M.x86.R_EBP + displacement;	    break;	  default:	    HALT_SYS();	}	DECODE_PRINTF("[EAX]");	offset = M.x86.R_EAX;	break;      case 6:	DECODE_PRINTF("[ESI]");	offset = M.x86.R_ESI;	break;      case 7:	DECODE_PRINTF("[EDI]");	offset = M.x86.R_EDI;	break;      default:	HALT_SYS();    }    offset += decode_sib_si(ss, index);    return offset;}/****************************************************************************PARAMETERS:rm  - RM value to decodeRETURNS:Offset in memory for the address decodingREMARKS:Return the offset given by mod=00 addressing.  Also enables thedecoding of instructions.NOTE:	The code which specifies the corresponding segment (ds vs ss)	below in the case of [BP+..].  The assumption here is that at the	point that this subroutine is called, the bit corresponding to	SYSMODE_SEG_DS_SS will be zero.	 After every instruction	except the segment override instructions, this bit (as well	as any bits indicating segment overrides) will be clear.  So	if a SS access is needed, set this bit.	 Otherwise, DS access	occurs (unless any of the segment override bits are set).****************************************************************************/unsigned decode_rm00_address(    int rm){    unsigned offset;    if (M.x86.mode & SYSMODE_PREFIX_ADDR) {	/* 32-bit addressing */	switch (rm) {	  case 0:	    DECODE_PRINTF("[EAX]");	    return M.x86.R_EAX;	  case 1:	    DECODE_PRINTF("[ECX]");	    return M.x86.R_ECX;	  case 2:	    DECODE_PRINTF("[EDX]");	    return M.x86.R_EDX;	  case 3:	    DECODE_PRINTF("[EBX]");	    return M.x86.R_EBX;	  case 4:	    return decode_sib_address(0);	  case 5:	    offset = fetch_long_imm();	    DECODE_PRINTF2("[%08x]", offset);	    return offset;	  case 6:	    DECODE_PRINTF("[ESI]");	    return M.x86.R_ESI;	  case 7:	    DECODE_PRINTF("[EDI]");	    return M.x86.R_EDI;	}    } else {	/* 16-bit addressing */	switch (rm) {	  case 0:	    DECODE_PRINTF("[BX+SI]");	    return (M.x86.R_BX + M.x86.R_SI) & 0xffff;	  case 1:	    DECODE_PRINTF("[BX+DI]");	    return (M.x86.R_BX + M.x86.R_DI) & 0xffff;	  case 2:	    DECODE_PRINTF("[BP+SI]");	    M.x86.mode |= SYSMODE_SEG_DS_SS;	    return (M.x86.R_BP + M.x86.R_SI) & 0xffff;	  case 3:	    DECODE_PRINTF("[BP+DI]");	    M.x86.mode |= SYSMODE_SEG_DS_SS;	    return (M.x86.R_BP + M.x86.R_DI) & 0xffff;	  case 4:	    DECODE_PRINTF("[SI]");	    return M.x86.R_SI;	  case 5:	    DECODE_PRINTF("[DI]");	    return M.x86.R_DI;	  case 6:	    offset = fetch_word_imm();	    DECODE_PRINTF2("[%04x]", offset);	    return offset;	  case 7:	    DECODE_PRINTF("[BX]");	    return M.x86.R_BX;	}    }    HALT_SYS();    return 0;}/****************************************************************************PARAMETERS:rm  - RM value to decodeRETURNS:Offset in memory for the address decodingREMARKS:Return the offset given by mod=01 addressing.  Also enables thedecoding of instructions.****************************************************************************/unsigned decode_rm01_address(    int rm){    int displacement;    if (M.x86.mode & SYSMODE_PREFIX_ADDR) {	/* 32-bit addressing */	if (rm != 4)	    displacement = (s8)fetch_byte_imm();	else	    displacement = 0;	switch (rm) {	  case 0:	    DECODE_PRINTF2("%d[EAX]", displacement);	    return M.x86.R_EAX + displacement;	  case 1:	    DECODE_PRINTF2("%d[ECX]", displacement);	    return M.x86.R_ECX + displacement;	  case 2:	    DECODE_PRINTF2("%d[EDX]", displacement);	    return M.x86.R_EDX + displacement;	  case 3:	    DECODE_PRINTF2("%d[EBX]", displacement);	    return M.x86.R_EBX + displacement;	  case 4: {	    int offset = decode_sib_address(1);	    displacement = (s8)fetch_byte_imm();	    DECODE_PRINTF2("[%d]", displacement);	    return offset + displacement;	  }	  case 5:	    DECODE_PRINTF2("%d[EBP]", displacement);	    return M.x86.R_EBP + displacement;	  case 6:	    DECODE_PRINTF2("%d[ESI]", displacement);	    return M.x86.R_ESI + displacement;	  case 7:	    DECODE_PRINTF2("%d[EDI]", displacement);	    return M.x86.R_EDI + displacement;	}    } else {	/* 16-bit addressing */	displacement = (s8)fetch_byte_imm();	switch (rm) {	  case 0:	    DECODE_PRINTF2("%d[BX+SI]", displacement);	    return (M.x86.R_BX + M.x86.R_SI + displacement) & 0xffff;	  case 1:	    DECODE_PRINTF2("%d[BX+DI]", displacement);	    return (M.x86.R_BX + M.x86.R_DI + displacement) & 0xffff;	  case 2:	    DECODE_PRINTF2("%d[BP+SI]", displacement);	    M.x86.mode |= SYSMODE_SEG_DS_SS;	    return (M.x86.R_BP + M.x86.R_SI + displacement) & 0xffff;	  case 3:	    DECODE_PRINTF2("%d[BP+DI]", displacement);	    M.x86.mode |= SYSMODE_SEG_DS_SS;	    return (M.x86.R_BP + M.x86.R_DI + displacement) & 0xffff;	  case 4:	    DECODE_PRINTF2("%d[SI]", displacement);	    return (M.x86.R_SI + displacement) & 0xffff;	  case 5:	    DECODE_PRINTF2("%d[DI]", displacement);	    return (M.x86.R_DI + displacement) & 0xffff;	  case 6:	    DECODE_PRINTF2("%d[BP]", displacement);	    M.x86.mode |= SYSMODE_SEG_DS_SS;	    return (M.x86.R_BP + displacement) & 0xffff;	  case 7:	    DECODE_PRINTF2("%d[BX]", displacement);	    return (M.x86.R_BX + displacement) & 0xffff;	}    }    HALT_SYS();    return 0;			/* SHOULD NOT HAPPEN */}/****************************************************************************PARAMETERS:rm  - RM value to decodeRETURNS:Offset in memory for the address decodingREMARKS:Return the offset given by mod=10 addressing.  Also enables thedecoding of instructions.****************************************************************************/unsigned decode_rm10_address(    int rm){    if (M.x86.mode & SYSMODE_PREFIX_ADDR) {	int displacement;	/* 32-bit addressing */	if (rm != 4)	    displacement = (s32)fetch_long_imm();	else	    displacement = 0;	switch (rm) {	  case 0:	    DECODE_PRINTF2("%d[EAX]", displacement);	    return M.x86.R_EAX + displacement;	  case 1:	    DECODE_PRINTF2("%d[ECX]", displacement);	    return M.x86.R_ECX + displacement;	  case 2:	    DECODE_PRINTF2("%d[EDX]", displacement);	    return M.x86.R_EDX + displacement;	  case 3:	    DECODE_PRINTF2("%d[EBX]", displacement);	    return M.x86.R_EBX + displacement;	  case 4: {	    int offset = decode_sib_address(2);	    displacement = (s32)fetch_long_imm();	    DECODE_PRINTF2("[%d]", displacement);	    return offset + displacement;	  }	  case 5:	    DECODE_PRINTF2("%d[EBP]", displacement);	    return M.x86.R_EBP + displacement;	  case 6:	    DECODE_PRINTF2("%d[ESI]", displacement);	    return M.x86.R_ESI + displacement;	  case 7:	    DECODE_PRINTF2("%d[EDI]", displacement);	    return M.x86.R_EDI + displacement;	}    } else {	int displacement = (s16)fetch_word_imm();	/* 16-bit addressing */	switch (rm) {	  case 0:	    DECODE_PRINTF2("%d[BX+SI]", displacement);	    return (M.x86.R_BX + M.x86.R_SI + displacement) & 0xffff;	  case 1:	    DECODE_PRINTF2("%d[BX+DI]", displacement);	    return (M.x86.R_BX + M.x86.R_DI + displacement) & 0xffff;	  case 2:	    DECODE_PRINTF2("%d[BP+SI]", displacement);	    M.x86.mode |= SYSMODE_SEG_DS_SS;	    return (M.x86.R_BP + M.x86.R_SI + displacement) & 0xffff;	  case 3:	    DECODE_PRINTF2("%d[BP+DI]", displacement);	    M.x86.mode |= SYSMODE_SEG_DS_SS;	    return (M.x86.R_BP + M.x86.R_DI + displacement) & 0xffff;	  case 4:	    DECODE_PRINTF2("%d[SI]", displacement);	    return (M.x86.R_SI + displacement) & 0xffff;	  case 5:	    DECODE_PRINTF2("%d[DI]", displacement);	    return (M.x86.R_DI + displacement) & 0xffff;	  case 6:	    DECODE_PRINTF2("%d[BP]", displacement);	    M.x86.mode |= SYSMODE_SEG_DS_SS;	    return (M.x86.R_BP + displacement) & 0xffff;	  case 7:	    DECODE_PRINTF2("%d[BX]", displacement);	    return (M.x86.R_BX + displacement) & 0xffff;	}    }    HALT_SYS();    return 0;			/* SHOULD NOT HAPPEN */}/****************************************************************************PARAMETERS:mod - modifierrm  - RM value to decodeRETURNS:Offset in memory for the address decoding, multiplexing calls tothe decode_rmXX_address functionsREMARKS:Return the offset given by "mod" addressing.****************************************************************************/unsigned decode_rmXX_address(int mod, int rm){  if(mod == 0)    return decode_rm00_address(rm);  if(mod == 1)    return decode_rm01_address(rm);  return decode_rm10_address(rm);}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线播放91灌醉迷j高跟美女| 国产成人精品免费| 欧美日韩dvd在线观看| 亚洲欧美日韩久久| 91福利在线导航| 亚洲成a天堂v人片| 欧美一区二区三区婷婷月色| 日韩电影免费一区| 91 com成人网| 激情久久五月天| 国产精品久久久久久久久晋中 | 日韩欧美国产一区二区在线播放| 视频一区视频二区中文字幕| 精品少妇一区二区三区在线视频| 韩国女主播成人在线观看| 欧美激情一区在线| 日本韩国一区二区| 人人超碰91尤物精品国产| 亚洲精品一区在线观看| 91小视频在线观看| 视频一区二区中文字幕| 欧美国产日韩a欧美在线观看| 色一情一乱一乱一91av| 无吗不卡中文字幕| 国产日产亚洲精品系列| 色婷婷国产精品综合在线观看| 亚洲.国产.中文慕字在线| 久久综合久久鬼色| 色网综合在线观看| 国模套图日韩精品一区二区| 亚洲人精品一区| 亚洲精品一区二区三区精华液| 97精品久久久午夜一区二区三区| 亚洲成人免费影院| 中文字幕免费在线观看视频一区| 欧洲在线/亚洲| 久久成人久久爱| 亚洲伊人伊色伊影伊综合网| 日韩免费成人网| 91高清视频在线| 国产电影精品久久禁18| 天天色综合成人网| 中文字幕欧美一区| 久久综合九色欧美综合狠狠| 欧美少妇一区二区| 成人永久aaa| 久久成人羞羞网站| 亚洲国产日韩a在线播放性色| 国产精品三级视频| 精品av综合导航| 欧美精品在线观看一区二区| 99久久精品国产导航| 国产主播一区二区| 免费成人在线影院| 亚洲成人黄色小说| 亚洲人成伊人成综合网小说| 2021久久国产精品不只是精品| 欧美日韩综合一区| 在线精品视频一区二区三四| 成人免费观看视频| 国产成人免费视频网站| 精品在线一区二区| 热久久免费视频| 日韩有码一区二区三区| 一区二区久久久| 亚洲私人影院在线观看| 国产精品美女久久久久久| 久久久精品国产免费观看同学| 精品国产一区二区三区忘忧草 | 亚洲女人的天堂| 国产精品无圣光一区二区| 国产偷国产偷精品高清尤物| 精品欧美一区二区久久| 精品国产乱码久久久久久闺蜜| 日韩一区二区免费高清| 91精品国产乱| 91精品午夜视频| 日韩欧美中文字幕制服| 日韩一区二区麻豆国产| 精品伦理精品一区| 欧美zozo另类异族| 精品sm捆绑视频| 欧美韩国日本综合| 亚洲国产电影在线观看| 亚洲欧洲无码一区二区三区| 国产精品久久久久一区| 亚洲人精品一区| 亚洲一卡二卡三卡四卡五卡| 亚洲成a人v欧美综合天堂下载 | 国产一区二区三区免费看| 激情综合网天天干| 国产成人av电影免费在线观看| 成人少妇影院yyyy| 色噜噜狠狠色综合欧洲selulu| 在线观看视频一区二区欧美日韩 | 欧美日韩在线亚洲一区蜜芽| 欧美精品一级二级三级| 日韩免费性生活视频播放| 国产色婷婷亚洲99精品小说| 亚洲国产精品国自产拍av| 亚洲欧美激情插| 日韩国产精品久久久| 国产在线视频精品一区| 99久久久精品| 91精品国产高清一区二区三区蜜臀| 精品免费国产一区二区三区四区| 欧美激情综合网| 一区二区三区在线免费观看| 日韩制服丝袜av| 成人一道本在线| 欧美精品第1页| 国产欧美精品一区二区三区四区| 夜夜揉揉日日人人青青一国产精品| 奇米一区二区三区av| 国产成人精品午夜视频免费| 色八戒一区二区三区| 精品国产百合女同互慰| 亚洲成av人片在线| 国产成人综合亚洲91猫咪| 欧美日产国产精品| 亚洲国产精品黑人久久久| 天堂成人免费av电影一区| 国产综合色产在线精品| 欧美综合亚洲图片综合区| 国产性天天综合网| 午夜激情一区二区| 99久久精品久久久久久清纯| 欧美草草影院在线视频| 亚洲综合免费观看高清完整版在线| 久久精品国产一区二区| 91国产丝袜在线播放| 国产欧美日韩卡一| 久久精品国产亚洲aⅴ| 欧美日韩中文一区| 日韩一区有码在线| 国产成人精品亚洲午夜麻豆| 日韩三级在线观看| 亚洲va中文字幕| 99精品视频在线免费观看| www一区二区| 秋霞国产午夜精品免费视频| 色欧美88888久久久久久影院| 久久久综合九色合综国产精品| 毛片不卡一区二区| 欧美日韩高清影院| 亚洲午夜激情网站| 91麻豆国产香蕉久久精品| 国产精品婷婷午夜在线观看| 久久成人久久爱| 欧美videos中文字幕| 日韩激情一二三区| 欧美理论电影在线| 亚洲成人免费视频| 欧美亚洲动漫另类| 一区二区三区在线视频免费观看| a级精品国产片在线观看| 欧美—级在线免费片| 国产一区二区三区四区五区入口| 日韩一级成人av| 日本免费新一区视频| 69堂成人精品免费视频| 日韩激情一区二区| 欧美一级在线视频| 日韩电影一区二区三区| 6080日韩午夜伦伦午夜伦| 天天操天天干天天综合网| 欧美久久久久久久久久| 午夜免费久久看| 欧美日韩国产另类不卡| 亚洲福利视频三区| 91精品国产综合久久香蕉的特点| 日韩在线a电影| 欧美电影免费观看完整版| 久久精品二区亚洲w码| 欧美一卡2卡三卡4卡5免费| 蜜臀久久久99精品久久久久久| 日韩精品一区二区三区视频播放| 久久机这里只有精品| 久久久精品国产99久久精品芒果| 成人av电影在线网| 日韩理论片网站| 欧美午夜视频网站| 免费成人小视频| 精品乱人伦一区二区三区| 国产精品一级片| 国产精品美女久久久久久久| 色婷婷激情一区二区三区| 日日噜噜夜夜狠狠视频欧美人| 日韩写真欧美这视频| 久久精品国产久精国产爱| 久久久国际精品| 色婷婷久久久久swag精品| 亚洲成av人在线观看| 精品免费一区二区三区| 波多野结衣在线一区| 一区二区久久久| 日韩精品一区二区三区视频| 成人av在线一区二区三区| 性做久久久久久免费观看| 精品国产乱码久久久久久老虎|