- 博客(5)
- 收藏
- 关注
原创 计算机系统基础寻址方式笔记
计算机系统基础tips 汇编语言的寻址方式就是寻找操作数所在地址的方法,有七种:立即寻址、寄存器寻址、直接寻址、寄存器间接寻址、寄存器相对寻址、基址变址寻址、相对基址变址寻址。 1、立即寻址:操作数在指令中,如: MOV AL, 12H (源操作数) 2、寄存器寻址:操作数在指令中的寄存器中,如: MOV AL, BH (源操作数) 3、直接寻址:操作数所在存储器的有效地址在指令中,如: MOV AL, [12H] (源操作数) 4、寄存器间接寻址:操作数所在存储器的有效地址在指令中的寄存器中,如:MOVA
2020-11-22 23:38:46
1689
原创 莞工oj 9.[C语言训练]计算1+1/2+1/3+…+1/n
莞工oj 6.[C语言训练]计算1+1/2+1/3+…+1/n 问题: 思路解析: 这个题没什么难点吧,唯一的就是对于c语言里数据类型计算的一些注意事项。 如果在计算1/n的时候直接写1/n由于1和n都是整型变量,相除的结果会直接向下取整导致所有的1/n都是0。所以要用1.0即浮点类型来计算。这样在计算的过程中运算会自动把n也转化成浮点类型再进行运算。这样问题就迎刃而解了。 代码: c: #include<stdio.h> int main(){ int n; scanf("%d",&am
2020-11-05 22:43:59
3993
1
原创 莞工oj 6.排队买票
莞工oj 5.排队买票 题目: 思路解析: 还是一道深度搜索的题目。 仔细解析这道题目,再每次选择数的时候都只有两种情况 ①选择一元小朋友 对应情况:只要还有一元小朋友没有排序即可作出此选择 ②选择两元小朋友 对应情况:之前选择的一元小朋友个数大于选择两元小朋友个数(即有余额的情况)则可作出此选择。 而搜索的出口就是所有小朋友都排序完毕。 故转化为代码如下: C: #include<stdio.h> int sum=0; int M,N,K; void dfs(int n,int k,int
2020-11-04 16:15:43
383
1
原创 莞工oj 5.产生数
莞工oj 5.产生数 题目: 解析思路: 一开始看到这个题误解了意思,(没注意看到任意次数变化)以为不用考虑传递性。所以就有了下列的解法: python: n,k=map(int,input().split(" ")) A=[] B=[] for i in range(k): a,b=map(int,input().split(" ")) if(a not in A): A.append(a) B.append(2) else: i=
2020-11-03 23:13:37
438
原创 莞工oj 4.马栏过河卒
莞工oj 4.马栏过河卒 题目: 思路: 这是一道DP类型题。(决策问题,同分治法解决不太一样,分治法是有联系的,而这个决策之间没什么特别联系。) 分析这道题目,由于兵只能向下或者向右走,不难发现其动态方程 dp[i][j] = dp[i-1][j] + dp[i][j-1] 也就是点i,j的路径总数是等于(i-1,j)与(i,j-1)路径总数的和。 并且i=0和j=0的行和列路径总数都是1。 障碍点(马的位置及其一步可以走到的位置)的路径总数都是0。 所以就可以解出这道题了。 一开始用python写了:
2020-11-02 23:07:43
1154
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人