滴水2015-01-12

1、2+3=1 成立吗?说明理由。

  解题:上面式子由 3个符号组成,那么起码得用3进制以上的进制表示

  三进制:2(0),3(1),1(2)  

    0+1=2不成立

  四进制:

    X(0)  2(1)  3(2)  1(3)

    1+2=3  那么  2+3=1成立

2、将下面的二进制数用16进制表示 1100 1011 0101 0100 1110 1011 0101 0111 1011 0100 1010 1011

  没什么好说的死记硬背就对了, C  B  5  4  E  B  5  7  B  4  A  B

3、将下面的十六进制数用二进制表示 487FDC120ACE69B953FE

  100(4)  1000(8)  111(7)  1111(F)  1101(D)  1100(C)  1(1)  10(2)  0(0) 1010(A)  1100(C)  1110(E)  110(6)  1001(9)  1011(B)  1001(9)  101()5  11(3)  1111(F)  1110(E)

4、二进制从0写到100(是100个数,每行写10个便于统计)

1       2             3          4                  5               6               7                8               9           10

00000000  00000001  00000010  000000011  00000100  00000101  00000110  00000111   00001000   00001001

00001010  00001011  00001100  00001101    00001110   00001111   00010000   00010001    00010010  00010011

00010100  00010101  00010110  00010111    00011000   00011001  00011010   00011011   00011100   00011101

00011110   00011111   00100000  00100001   00100010   00100011  00100100  00100101   00100110  00100111

00101000  00101001  00101010  00101011   00101100   00101101  00101110   00101111   00110000  00110001

00110010  00110011  00110100   00110101   00110110   00110111   00111000   00111001   00111010   00111011

00111100  00111101   00111110   00111111    01000000   01000001   01000010  01000011   01000100  01000101

01000110  01000111  01001000  01001001   01001010   01001011   01001100  01001101   01001110  01001111

01010000  01010001  01010010    01010011   01010100   01010101  01010110   01010111   01011000  01011001

01011010  01011011   01011100  01011101   01011110    01011111   01100000  01100001   01100010  01100011

<1> 编制7进制加法表,乘法表,并计算下面的结果:

0 1 2 3 4 5 6
10 11 12 13 14 15 16
20 21 22 23 24 25 26
30 31 32 33 34 35 36
40 41 42 43 44 45 46
50 51 52 53 54 55 56
60 61 62 63 64 65 66

1+1=1
2+1=3 2+2=4
3+1=4 3+2=5 3+3=6
4+1=5 4+2=6 4+3=10 4+4=11
5+1=6 5+2=10 5+3=11 5+4=12 5+5=13
6+1=10 6+2=11 6+3=12 6+4=13 6+5=14 6+6=15

1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=12
4*1=4 4*2=11 4*3=15 4*4=22
5*1=5 5*2=13 5*3=21 5*4=26 5*5=34
6*1=6 6*2=15 6*3=24 6*4=33 6*5=42 6*6=51

23456+54356=?

5621-654=?

234*65=?

<2> 编制16进制加法表,乘法表,并计算下面的结果:

注:纯手敲加乘法表,累死人,虐死人(当时心理活动,要不程序生成吧,心想太简单可以跳过,你怎么认为简单,不手敲你怎么证明你会?)

void foo(int n) {unsigned char nAry[256] = {"0123456789abcdefghijklmnopqrstuvwxyz" };n--;for (int i = 1; i <= n;i++) {for (int j = 1; j <= i;j++) {printf("%c*%c=\t", nAry[i], nAry[j]);}puts("");}
}
foo(16);

View Code

0 1 2 3 4 5 6 7 8 9 a b c d e f
10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f
20 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f

2D4E6+CF3A6=?

5FD1-E5A=?

2CA*A5=?

滴水2015-01-13

1、9进制定义:由9个符号组成,分别是:2、9、1、7、6、5、4、8、3,逢9进1           计算:123 + 234 = ?

计算这个题,先理解数轴计算方法。

先绘画一条数轴,计算 1-2=?

找到1的位置,向左数2格。等于-1

2、10进制定义:由10个符号组成,分别是:!、@、$、%、^、&、*、A、B、C,逢10进1       计算:@$$B + %AC& = ?

void convertResult(int v1,int base) {char buffer[1024] = { 0 };int nIndex = 0;do {buffer[nIndex++]=charList2[v1 % base];v1 /= base;} while (v1);while (nIndex--) {printf("%c",buffer[nIndex]);}
}
unsigned int symbolToNumber(char* p) {unsigned int nRet = 0 ;unsigned int nLength = 0;unsigned int nRight = 0;nLength = strlen(p);nRight = (unsigned int)pow(10, nLength-1);int count = 0;while (count < nLength) {int i = 0;for (i = 0; i < sizeof(charList2)-1;i++) {if (*(p + count)== charList2[i]) {break;}}nRet += i*(nRight);nRight /= 10;count++;}return nRet;
}
int main(int n) {char c1[256] = { "@$$B" };char c2[256] = { "%AC&" };convertResult(symbolToNumber(c1)+ symbolToNumber(c2),10);return 0;
}

笔算后,写了一个验证的程序

验证结果:

3、使用异或对 87AD6 进行加密后再进行解密,加解密密钥:5

滴水2015-01-14

003数据宽度_逻辑运算.xls
1、八进制数2-5 在计算器中的的结果是:1777777777777777777775 为什么?

  自我理解:其实这没什么好奇怪的,如果你真要觉得奇怪,那么我倒要反问看官了,2-5=-3,你认为-3奇怪吗?当你看见0xFFFFFFFF表示为-1你奇怪吗?其实并不稀奇!

  不管怎么说2-5=-3,-3始终在内存的排列情况不变。管你以十进制,八进制、十六进制输出,-3在内存是不会变化的

  ,calc.exe显示这样的结果,不就是分离-3在内存中的排列数据吗?多说无益,自己实现一个

unsigned char charList1[] = "0123456789abcdefghijklmnopqrstuvwxyz";
void calc(long long int nResult, int base) {int bit = 0;int i = 0;if (base==8) {bit = 7;}while (i < (sizeof(long long int) * 8) / 3) {printf("%c", charList1[nResult & bit]);nResult >>= 3;i++;}int y = 0;if (y = ((sizeof(long long int) * 8) % 3)) {int i = (int)pow(2,y-1);i = (i - 1) + i;printf("%c", charList1[nResult & i]);}
}calc(2 - 5, 8);

简单实现

懒得翻转了

2、使用异或对 87AD6 进行加密后再进行解密,加解密密钥:5

  上面好像做过
3、只用逻辑运算计算2-3=?(涉及内容:逻辑运算、移位、数据宽度)

2-3 = 2+-3=?
求-3的补码,咋们假设4位的数据宽度0011    3的原码
1100    反码
1101    这就是-3的补码了0010        0010
xor    1101    and    1101    计算过程
--------------------1111        0000其结果是:1111
取1111的绝对值
1111    补码
0000    反码
0001    原码

004通用寄存器(1).xls
1、使用DTDebug打开一个EXE程序(F3),并找到寄存器窗口
2、使用DTDebug打开一个EXE程序(F3),单步执行程序(F8)
3、记住这个8个通用寄存器的名称,按照顺序。

ACDB SB SD

EAX,ECX, EDX, EBX, ESP,EBP,ESI,EDI
4、使用DTDebug打开一个EXE程序(F3),使用MOV指令修改8个寄存器的值,单步执行,观察修改后的结果。

滴水2015-01-15

  理解作业。。

滴水2015-01-16

1、使用EBX存储栈底地址,EDX存储栈顶地址,连续存储5个不同的数.

  

2、分别使用栈底加偏移、栈顶加偏移的方式读取这5个数,并存储到寄存器中.

3、弹出这5个数,恢复栈顶到原来的位置.

4、使用2种方式实现:push ecx

5、使用2种方式实现:pop ecx

6、使用2种方式实现:push esp
7、使用2种方式实现:pop esp

转载于:https://www.cnblogs.com/binaryAnt/p/11147508.html

滴水课后作业(1-5)相关推荐

  1. 滴水课后作业(6-10)

    滴水2015-01-19 本节练习: 1.熟练记住CF/PF/AF/ZF/SF/OF的位置 略过 2.写汇编指令只影响CF位的值(不能影响其他标志位) MOV AX,0FF00 ADD AX,101 ...

  2. RvaToFileOffset 内存偏移转成文件偏移(滴水课后作业)

    题目说明 将内存偏移RVA转成文件偏移FOA的函数; 思路是遍历节表,比较节内存偏移VirtualAddress和RVA,确定RVA所在的节之后,计算RVA距离所在节首地址的偏移offset,然后返回 ...

  3. matlab用lism求零输入响应,信号与系统matlab课后作业_北京交通大学讲解.docx

    信号与系统matlab课后作业_北京交通大学讲解.docx 信号与系统MATLAB平时作业 学院 电子信息工程学院 班级 姓名 学号 教师 钱满义 MATLAB习题 M3-1 一个连续时间LTI系统满 ...

  4. JAVA语法基础 动手动脑及课后作业

    动手动脑1: 仔细阅读示例: EnumTest.java,运行它,分析运行结果? public class EnumTest { public static void main(String[] ar ...

  5. 写在11期培训班第五次课后作业前面的话

       本文内容简单,但是感觉对一些博友还是有参考警醒价值,因此,分享给支持老男孩的所有博友们,希望你们喜欢! 写在11期培训班第五次课后作业前面的话: 作为运维过来人,老男孩总希望能多给大家讲一点成功 ...

  6. day 13 课后作业

    # -*- coding: utf-8 -*-# @Time : 2019/1/7 18:00# @Author : Endless-cloud# @Site : # @File : day 13 课 ...

  7. [课后作业] 第032讲:异常处理:你不可能总是对的

    [课后作业] 第032讲:异常处理:你不可能总是对的 参考文章: (1)[课后作业] 第032讲:异常处理:你不可能总是对的 (2) 课后测试题 备忘一下.

  8. 吴恩达机器学习课后作业——偏差和方差

    1.写在前面 吴恩达机器学习的课后作业及数据可以在coursera平台上进行下载,只要注册一下就可以添加课程了.所以这里就不写题目和数据了,有需要的小伙伴自行去下载就可以了. 作业及数据下载网址:吴恩 ...

  9. Python从入门到实践第9章课后作业

    Python从入门到实践第9章课后作业 编写过程中不知道如何将列表传入子类中,下面实例中均没有使用 #9-1 # class Restaurant(): # """模拟饭 ...

最新文章

  1. Cassandra架构、设计(集群表)和性能报告
  2. AtCoder AGC030C Coloring Torus (构造)
  3. λ-矩阵(初等因子)
  4. 1090. Highest Price in Supply Chain (25)
  5. B1922 [Sdoi2010]大陆争霸 最短路
  6. mysql触发器的基本操作_MySQL基本操作-触发器
  7. 售票系统的组件图和部署图_门禁安装大样图、管线图、系统图、电锁安装图
  8. Windows系统过滤病毒功能吗
  9. 机器学习入门二 ----- 机器学习术语表
  10. c语言中的各种“零”
  11. monthcalendar控件
  12. c语言既是素数又是回文数的三位数,编写程序,找出所有既是素数又是回文数的三位正整数.例如:131等...
  13. hp,Qlogic,Brocade光纖卡查看方式
  14. 网页前端监控系统(错误日志,接口监控)的使用
  15. JAVA程序设计实用教程 第三章 习题3(2)
  16. 启动tomcat报错:StandardEngine[Catalina].StandardHost[localhost].StandardContext
  17. h5获取当前浏览器ip和城市名称
  18. 趣店财报:最会赚钱的趣店亏了
  19. 用户管理系统功能测试报告
  20. 【SemiDrive源码分析】【MailBox核间通信】43 - 基于Mailbox IPCC RPC 实现核间通信(代码实现篇)

热门文章

  1. 统计app用户在线时长_「云工作普及系列」2.如何实时统计工作时长,提高工作效率
  2. 【Pytorch神经网络实战案例】16 条件WGAN模型生成可控Fashon-MNST模拟数据
  3. 简单线性回归(Simple Linear Regression)和多元线性回归(Multiple Regression)学习笔记
  4. 谷歌浏览器有哪些好看的主题_Kibou 简洁的Typecho主题
  5. Chapter7-8_Deep Learning for Constituency Parsing
  6. LeetCode 1798. 你能构造出连续值的最大数目
  7. 流式计算的代表:Storm、Flink、Spark Streaming
  8. LeetCode MySQL 608. 树节点
  9. 潜在语义分析(Latent Semantic Analysis,LSA)
  10. LeetCode 860. 柠檬水找零(贪心)