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

📄 sbbmisc.c

📁 The Valgrind distribution has multiple tools. The most popular is the memory checking tool (called M
💻 C
字号:
#include <stdio.h>char in_b, out_b1, out_b2, in_b2;short in_w, out_w1, out_w2;int in_l, out_l1, out_l2;extern void sbb_ib_al ( void );asm("\n""sbb_ib_al:\n""\tmovb in_b, %al\n""\tclc\n""\tsbbb $5, %al\n""\tmovb %al, out_b1\n""\tmovb in_b, %al\n""\tstc\n""\tsbbb $5, %al\n""\tmovb %al, out_b2\n""\tret\n");extern void sbb_iw_ax ( void );asm("\n""sbb_iw_ax:\n""\tmovw in_w, %ax\n""\tclc\n""\tsbbw $555, %ax\n""\tmovw %ax, out_w1\n""\tmovw in_w, %ax\n""\tstc\n""\tsbbw $555, %ax\n""\tmovw %ax, out_w2\n""\tret\n");extern void sbb_il_eax ( void );asm("\n""sbb_il_eax:\n""\tmovl in_l, %eax\n""\tclc\n""\tsbbl $555666, %eax\n""\tmovl %eax, out_l1\n""\tmovl in_l, %eax\n""\tstc\n""\tsbbl $555666, %eax\n""\tmovl %eax, out_l2\n""\tret\n");extern void sbb_eb_gb ( void );asm("\n""sbb_eb_gb:\n""\tmovb in_b, %al\n""\tclc\n""\tsbbb in_b2, %al\n""\tmovb %al, out_b1\n""\tmovb in_b, %al\n""\tstc\n""\tsbbb in_b2, %al\n""\tmovb %al, out_b2\n""\tret\n");extern void sbb_eb_gb_2 ( void );asm("\n""sbb_eb_gb_2:\n""\tpushl %ecx\n""\tmovb in_b, %cl\n""\tmovb in_b2, %dh\n""\tclc\n""\tsbbb %dh,%cl\n""\tmovb %cl, out_b1\n""\tmovb in_b, %cl\n""\tmovb in_b2, %dh\n""\tstc\n""\tsbbb %dh,%cl\n""\tmovb %cl, out_b2\n""\tpopl %ecx\n""\tret\n");extern void adc_eb_gb ( void );asm("\n""adc_eb_gb:\n""\tmovb in_b, %al\n""\tclc\n""\tadcb in_b2, %al\n""\tmovb %al, out_b1\n""\tmovb in_b, %al\n""\tstc\n""\tadcb in_b2, %al\n""\tmovb %al, out_b2\n""\tret\n");extern void adc_eb_gb_2 ( void );asm("\n""adc_eb_gb_2:\n""\tpushl %ecx\n""\tmovb in_b, %cl\n""\tmovb in_b2, %dh\n""\tclc\n""\tadcb %dh,%cl\n""\tmovb %cl, out_b1\n""\tmovb in_b, %cl\n""\tmovb in_b2, %dh\n""\tstc\n""\tadcb %dh,%cl\n""\tmovb %cl, out_b2\n""\tpopl %ecx\n""\tret\n");int main ( void ){   in_b = 99;   sbb_ib_al();   printf("r1 = %d %d\n", (int)out_b1, (int)out_b2);   in_w = 49999;   sbb_iw_ax();   printf("r2 = %d %d\n", (int)out_w1, (int)out_w2);   in_l = 0xF0000000;   sbb_il_eax();   printf("r3 = %d %d\n", (int)out_l1, (int)out_l2);   in_b = 99;   in_b2 = 88;   sbb_eb_gb();   printf("r4 = %d %d\n", (int)out_b1, (int)out_b2);   in_b = 66;   in_b2 = 77;   sbb_eb_gb_2();   printf("r5 = %d %d\n", (int)out_b1, (int)out_b2);   in_b = 99;   in_b2 = 88;   adc_eb_gb();   printf("r6 = %d %d\n", (int)out_b1, (int)out_b2);   in_b = 66;   in_b2 = 77;   adc_eb_gb_2();   printf("r7 = %d %d\n", (int)out_b1, (int)out_b2);   return 0;}

⌨️ 快捷键说明

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