玩命加载中 . . .

学习之旅
279-完全平方数 279-完全平方数
LeetCode 279. Perfect SquaresLeetCode-279 Given an integer n, return the least number of perfect square numbers that sum
2021-11-29
494-目标和 494-目标和
LeetCode 494. Target SumLeetCode-494 You are given an integer array nums and an integer target. You want to build an exp
2021-11-29
509-斐波那契数 509-斐波那契数
LeetCode 509. Fibonacci NumberLeetCode-509 The Fibonacci numbers, commonly denoted F(n) form a sequence, called the Fibo
2021-11-29
3.5-指令与条件码 3.5-指令与条件码
指令与条件码条件码寄存器条件码寄存器是由CPU来维护的,长度是1Bit,它描述了最近执行的操作的属性,例如ALU执行两条连续的算术指令 t1: addq %rax, %rbx t2: subq %rcx, %rdx t1时刻执行指令1,t2
2021-11-20
3.4-算术和逻辑运算指令 3.4-算术和逻辑运算指令
算术和逻辑运算指令leaq指令leaq S, D // load effective address q表示地址长度是64位 leaq 7(%rdx, %rdx, 4), %rax // 地址复制到rax中 有效地址的计算方式
2021-11-20
3.3-栈与数据传送指令 3.3-栈与数据传送指令
栈与数据传送指令在程序的执行过程中,需要在CPU和内存之间进行频繁的数据存取,例如,CPU执行加法c=a+b,首先通过执行数据传送指令将a和b的值从内存读到寄存器内 寄存器就是CPU内的一种数据存储部件,只不过容量比较小,比如,寄存器rax
2021-11-20
3.2-寄存器与数据传送指令 3.2-寄存器与数据传送指令
寄存器与数据传送指令64位的处理器中,原来8个16位寄存器扩展成了64位,还增加了8个 不同寄存器扮演不同的角色,相应的编程规范规定了如何使用这些寄存器 rax用来保存函数的返回值 rsp用来保存程序栈的结束位置 rdi, rsi, r
2021-11-20
3.1-程序的机器级表示 3.1-程序的机器级表示
3.1 程序的机器级表示编写main.c和mstore.c #include <stdio.h> void mulstore(long, long, long*); int main() { long d;
2021-11-20
寄存器 寄存器
寄存器寄存器是CPU内部的构造,主要用于信息的存储。除此之外,CPU内部还有运算器,负责处理数据;控制器控制其他组件;外部总线连接CPU和各种组件,进行数据传输;内部总线负责CPU内部各种组件的数据处理 为什么会出现寄存器? 程序在内存中装
2021-11-20
2.4-浮点数 2.4-浮点数
2.4 浮点数2.4.1 浮点数表示 V = (-1)^S \times M \times 2^E float占4个字节,32位,分成3段 最高位表示符号位S,S为0表示正数,S为1表示负数 23位到30位是阶码,共8位 0到22位是尾
2021-11-20
2.3-整数的运算 2.3-整数的运算
2.3 整数的运算2.3.1 加法无符号加法$w$位无符号数的取值范围是:${\color{tomato}{0 \leq x < 2^w}}$ 两个无符号数$x,y$相加,如果和小于$2^w$,结果为$x+y$,与实际情况一致 如
2021-11-20
2.2-整数的表示 2.2-整数的表示
2.2 整数的表示2.2.1 数据类型不同数据类型的数值范围 在64位机器上,long占8个字节 在32位机器上,long占4个字节 补码负数是用补码表示的 补码最高位的权重是负的,所以称为符号位 x_{w-1} \cdo
2021-11-20
22 / 43