Learning Process Summary
First, GCC compilation
When using the C99 feature, the GCC-STD=C99 XXX.C Lab building environment is 64 bits, compiled to 32-bit machine code: Gcc-m32 xxx.c
Second, focus on knowledge points
P20: Three kinds of numbers: unsigned number, signed number (2 complement), floating point, information security students from the reverse angle to consider the cause of the vulnerability
P22: In-process conversion, pay attention to the two-in-production intermediate results are getting better.
P25:gcc-m32 can generate 32-bit code on 64-bit machines, such as the lab building's environment
P26: Byte order is the basis of network programming, remember that the small end is "high-to-high, low-to-low", the big-endian opposite it can be.
P28: Code Execution
P32: Can distinguish the logical operation (the result is 1 or 0) and the bitwise operation (the result is a bit vector), all the logical operations can be used with, or, non-expression (maximum, minimum), and or can not be used "and non" or "or non" expression, so as long as a and non-gate, you can complete all the
P33: The mask is an important application of bit operations, can be set to a specific bit, can be zeroed
P38: To use the "long Long" type in C99, compiling is to use the Gcc-std=c99
P39: The complement of the use of the length of the register is a fixed feature to simplify mathematical operations. Think of clocks, 12-1 is equivalent to 12 + 11, the use of complement can be used to unify mathematical operations into addition, as long as an adder can achieve all the mathematical operations.
P44: Note The conversion rules for signed and unsigned numbers in C, and the bit vectors do not change. Think of the first chapter of the message is "bit + context"
P48: How do i make negative numbers equal to positive numbers? Reverse thinking of information security
p49:0 Extensions and Symbol extensions
P52: Think deeply about code and results
P54: How can I overflow an integer operation? How to avoid it? p62 example to see
P67: The final thought on integer arithmetic
P67: The basis of a scientific notation for floating-point numbers is not difficult to understand, IEEE standard 754
P68: Inaccuracy and rounding of floating-point arithmetic
P70:ieee floating point standard, float/double type
p74: Integers and floating-point numbers represent the same number of relationships
P78: Integer and floating-point conversion rules
P80: Homework can choose to do, coordination of each problem up to two groups to do, one star topic a person plus a point, two stars plus two points, Samsung plus three points, four stars plus four points
Iii. Key Exercises
P24 Binary Conversion Code
P24 Show_bytes, write a main function test, reference P30 code
P35 Exercise 2.11, you can use GDB one step tracking, understand more deeply
P44 code into a main function, you can use GDB one step tracking, understand more deeply
P47/P49 code into a main function, you can use GDB one step tracking, understand more deeply
P78, conversion rules can be written in a few lines of code to test.
Not finished, go back to do ...
20135219 Hong--The basic design of information security system third week study summary