- Mastering Assembly Programming
- Alexey Lyashko
- 153字
- 2021-08-20 10:23:26
Counter
ECX register - also known as counter register. This register is used in loops as a loop iteration counter. It is first loaded with a number of iterations, and then decremented each time the loop instruction is executed until the value stored in ECX becomes zero, which instructs the processor to break out of the loop. We can compare this to the do{...}while() clause in C:
int ecx = 10;
do
{
// do your stuff
ecx--;
}while(ecx > 0);
Another common usage of this register, actually the usage of its least significant part, CL, is in bitwise shift operations, where it contains the number of bits in which the source operand should be shifted. Consider the following code, for example:
mov eax, 0x12345
mov cl, 5
shl eax, cl
This would result in the register EAX being shifted 5 bits to the left (having the value of 0x2468a0 as a result).
推薦閱讀
- Magento 1.8 Development Cookbook
- 用Flutter極速構建原生應用
- INSTANT OpenNMS Starter
- Learn React with TypeScript 3
- Nginx Lua開發實戰
- Python機器學習算法: 原理、實現與案例
- Learning Apache Karaf
- Domain-Driven Design in PHP
- Practical GIS
- 實驗編程:PsychoPy從入門到精通
- Effective C++:改善程序與設計的55個具體做法(第三版)中文版(雙色)
- 3D Printing Designs:Design an SD Card Holder
- 自己動手做智能產品:嵌入式JavaScript實現
- Python實現Web UI自動化測試實戰:Selenium 3/4+unittest/Pytest+GitLab+Jenkins
- Java實用教程