Форум программистов, компьютерный форум CyberForum.ru

Виртуальная машина - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Подключении механизма обнаружение утечек памяти http://www.cyberforum.ru/cpp-beginners/thread646347.html
// output N number of M devide L.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include "iostream" #include <conio.h> #include <iomanip> int _tmain(int argc, _TCHAR* argv) {
C++ Ошибки на стадии линковки obj\Release\main2.o:main2.cpp|| undefined reference to `__gxx_personality_sj0'| obj\Release\main2.o:main2.cpp|| undefined reference to `_Unwind_SjLj_Register'| obj\Release\main2.o:main2.cpp|| undefined reference to `_imp___ZN5boost6thread12start_threadEv'| obj\Release\main2.o:main2.cpp|| undefined reference to `_imp___ZN5boost6thread4joinEv'| obj\Release\main2.o:main2.cpp|| undefined... http://www.cyberforum.ru/cpp-beginners/thread646307.html
Ругается на vector C++
Делаю свою хеш-таблицу, заголовочный файл раннего прототипа: #include <vector> class HashTable { private: vector<void*> Table; //код } Почему-то выдаёт такие ошибки:
C++ не компилируется задание: компонент связности графа - кто разберется
#include <iostream> #include <conio.h> #include <stdlib.h> class Stack { private: int stackSize; int* stackArray; int counterOfStackElements; public:
C++ GetWindowRect() Почему возвращается не тот размер окна? http://www.cyberforum.ru/cpp-beginners/thread646274.html
почему возвращается не тот размер окна что я задавал ранее? 800х600 задавал 806х625 вернула ф-я. код int GetWidth() { RECT r; GetWindowRect(WindowHandle, &r); return r.right - r.left; }; int GetHeight()
C++ Рекурсия, факториал Недавно увидел как пример рекурсии: #include<iostream> using namespace std; int f(int n) { if (n == 1) return 1; return f(n-1)*n; } подробнее

Показать сообщение отдельно
OhMyGodSoLong
~ Эврика! ~
1243 / 992 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
30.10.2012, 23:19     Виртуальная машина
Цитата Сообщение от PinkPink Посмотреть сообщение
т.е. если мы хотим безусловный переход, то пишем jmp
а если условный, то команда перехода будет обозначаться по разному в зависимости от того какой флаг проверять?
какие основные и очень важные флаги есть?
Ага.

Вот списочек флагов для IA-32. Чаще всего условные переходы делаются по арифметике. Перенос, переполнение, ноль. Нулевой флаг заодно является "универсальным": есть кучка инструкций для сравнения (больше, меньше и т. п.), которые его устанавливают, так что он заодно может использоваться для "перейти если a >= b" и т. п.


Цитата Сообщение от PinkPink Посмотреть сообщение
и ещё вопрос. переход к подпрограмме и возврат, вроде бы всё понятно, но немного не могу себе представить это в коде... подпрограмма где будет распологаться в отличие от основной программы? в начале? или в принципе где угодно, просто чтобы после подпрограммы дальше код не выполнялся делается возврат?
Подпрограмма располагается где угодно. (Можно хоть внутри главной программы, но это немного неудобно. Обычно где-нибудь рядом, за ней сразу же, к примеру.)

Обычно как делается. Есть две инструкции: call и ret. Первая заталкивает текущее значение счётчика команд (IP) в стек; после этого делается (безусловный) переход на код подпрограммы. Подпрограмма для возврата выполняет инструкцию ret, которая достаёт из стека адрес возврата и устанавливает его как новое значение счётчика команд. (Конечно, это головная боль подпрограммы сбалансировать push и pop внути себя, чтобы к моменту вызова ret на верхушке стека лежал именно адрес возврата.)
 
Текущее время: 19:47. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru