<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic difference between win32 programming and 64 bit programming in Software Archive</title>
    <link>https://community.intel.com/t5/Software-Archive/difference-between-win32-programming-and-64-bit-programming/m-p/777863#M4922</link>
    <description>&lt;P&gt;&lt;A href="http://www.viva64.com/articles/x64-lessons/"&gt;Lessons on development of 64-bit C/C++ applications&lt;/A&gt;&lt;/P&gt;&lt;P&gt;The course is devoted to creation of 64-bit applications in C/C++ language and is intended for the Windows application developers who use Visual Studio 2005/2008/2010 environment. Developers working with other 64-bit operating systems will learn much interesting as well. The course will consider all the steps of creating a new safe 64-bit application or migrating the existing 32-bit code to a 64-bit system. &lt;/P&gt;&lt;P&gt;The course is composed of 28 lessons devoted to introduction to 64-bit systems, issues of building 64-bit applications, methods of searching errors specific to 64-bit code and code optimization. Such questions are also considered as estimate of the cost of moving to 64-bit systems and rationality of this move.&lt;/P&gt;&lt;DIV style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;" id="_mcePaste"&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;Course
contents:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;UL&gt;&lt;LI&gt;&lt;A title="What 64-bit systems are." href="http://www.viva64.com/lessons-x64/01_What_64-bit_systems_are.html"&gt;Lesson 01.&lt;/A&gt; What 64-bit systems are.&lt;/LI&gt;&lt;/UL&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Support of 32-bit applications." href="http://www.viva64.com/lessons-x64/02_Support_of_32-bit_applications.html"&gt;Lesson
02.&lt;/A&gt; Support of 32-bit applications.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Porting code to 64-bit systems. The pros and cons." href="http://www.viva64.com/lessons-x64/03_Porting_code__The_pros_and_cons.html"&gt;Lesson
03.&lt;/A&gt; Porting code to 64-bit systems. The pros and cons.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Creating the 64-bit configuration." href="http://www.viva64.com/lessons-x64/04_Creating_the_64-bit_configuration.html"&gt;Lesson
04.&lt;/A&gt; Creating the 64-bit configuration.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Building a 64-bit application." href="http://www.viva64.com/lessons-x64/05_Building_a_64-bit_application.html"&gt;Lesson
05.&lt;/A&gt; Building a 64-bit application.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Errors in 64-bit code." href="http://www.viva64.com/lessons-x64/06_Errors_in_64-bit_code.html"&gt;Lesson
06.&lt;/A&gt; Errors in 64-bit code.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="The issues of detecting 64-bit errors." href="http://www.viva64.com/lessons-x64/07_The_issues_of_detecting_64-bit_errors.html"&gt;Lesson
07.&lt;/A&gt; The issues of detecting 64-bit errors.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Static analysis for detecting 64-bit errors." href="http://www.viva64.com/lessons-x64/08_Static_analysis.html"&gt;Lesson
08.&lt;/A&gt; Static analysis for detecting 64-bit errors.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Pattern 01. Magic numbers." href="http://www.viva64.com/lessons-x64/09_Pattern_01_Magic_numbers.html"&gt;Lesson
09.&lt;/A&gt; Pattern 01. Magic numbers.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Pattern 02. Functions with variable number of arguments." href="http://www.viva64.com/lessons-x64/10_Pattern_02_Printf.html"&gt;Lesson
10.&lt;/A&gt; Pattern 02. Functions with variable number of arguments.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Pattern 03. Shift operations." href="http://www.viva64.com/lessons-x64/11_Pattern_03_Shift_operations.html"&gt;Lesson
11.&lt;/A&gt; Pattern 03. Shift operations.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Pattern 04. Virtual functions." href="http://www.viva64.com/lessons-x64/12_Pattern_04_Virtual_functions.html"&gt;Lesson
12.&lt;/A&gt; Pattern 04. Virtual functions.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Pattern 05. Address arithmetic." href="http://www.viva64.com/lessons-x64/13_Pattern_05_Address_arithmetic.html"&gt;Lesson
13.&lt;/A&gt; Pattern 05. Address arithmetic.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Pattern 06. Changing an array's type." href="http://www.viva64.com/lessons-x64/14_Pattern_06_Changing_an_arrays_type.html"&gt;Lesson
14.&lt;/A&gt; Pattern 06. Changing an array's type.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Pattern 07. Pointer packing." href="http://www.viva64.com/lessons-x64/15_Pattern_07_Pointer_packing.html"&gt;Lesson
15.&lt;/A&gt; Pattern 07. Pointer packing.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Pattern 08. Memsize-types in unions." href="http://www.viva64.com/lessons-x64/16_Pattern_08_Memsize-types_in_unions.html"&gt;Lesson
16.&lt;/A&gt; Pattern 08. Memsize-types in unions.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Pattern 09. Mixed arithmetic." href="http://www.viva64.com/lessons-x64/17_Pattern_09_Mixed_arithmetic.html"&gt;Lesson
17.&lt;/A&gt; Pattern 09. Mixed arithmetic.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Pattern 10. Storage of integer values in double." href="http://www.viva64.com/lessons-x64/18_Pattern_10_Memsize_and_double.html"&gt;Lesson
18.&lt;/A&gt; Pattern 10. Storage of integer values in double.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Pattern 11. Serialization and data interchange." href="http://www.viva64.com/lessons-x64/19_Pattern_11_Serialization.html"&gt;Lesson
19.&lt;/A&gt; Pattern 11. Serialization and data interchange.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Pattern 12. Exceptions." href="http://www.viva64.com/lessons-x64/20_Pattern_12_Exceptions.html"&gt;Lesson
20.&lt;/A&gt; Pattern 12. Exceptions.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Pattern 13. Data alignment." href="http://www.viva64.com/lessons-x64/21_Pattern_13_Data_alignment.html"&gt;Lesson
21.&lt;/A&gt; Pattern 13. Data alignment.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Pattern 14. Overloaded functions." href="http://www.viva64.com/lessons-x64/22_Pattern_14_Overloaded_functions.html"&gt;Lesson
22.&lt;/A&gt; Pattern 14. Overloaded functions.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Pattern 15. Growth of structures' sizes." href="http://www.viva64.com/lessons-x64/23_Pattern_15_Growth_of_structures_sizes.html"&gt;Lesson
23.&lt;/A&gt; Pattern 15. Growth of structures' sizes.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Phantom errors." href="http://www.viva64.com/lessons-x64/24_Phantom_errors.html"&gt;Lesson
24.&lt;/A&gt; Phantom errors.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Working with patterns of 64-bit errors in practice." href="http://www.viva64.com/lessons-x64/25_Working_with_patterns.html"&gt;Lesson
25.&lt;/A&gt; Working with patterns of 64-bit errors in practice.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Optimization of 64-bit programs." href="http://www.viva64.com/lessons-x64/26_Optimization.html"&gt;Lesson
26.&lt;/A&gt; Optimization of 64-bit programs.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Peculiarities of creating installers for a 64-bit environment." href="http://www.viva64.com/lessons-x64/27_Creating_installers.html"&gt;Lesson
27.&lt;/A&gt; Peculiarities of creating installers for a 64-bit environment.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Estimating the cost of 64-bit migration of C/C++ applications." href="http://www.viva64.com/lessons-x64/28_Estimating_the_cost.html"&gt;Lesson
28.&lt;/A&gt; Estimating the cost of 64-bit migration of C/C++ applications.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;

&lt;/DIV&gt;

&lt;P&gt;Course contents:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;A title="What 64-bit systems are." href="http://www.viva64.com/lessons-x64/01_What_64-bit_systems_are.html"&gt;Lesson 01.&lt;/A&gt; What 64-bit systems are.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Support of 32-bit applications." href="http://www.viva64.com/lessons-x64/02_Support_of_32-bit_applications.html"&gt;Lesson 02.&lt;/A&gt; Support of 32-bit applications.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Porting code to 64-bit systems. The pros and cons." href="http://www.viva64.com/lessons-x64/03_Porting_code__The_pros_and_cons.html"&gt;Lesson 03.&lt;/A&gt; Porting code to 64-bit systems. The pros and cons.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Creating the 64-bit configuration." href="http://www.viva64.com/lessons-x64/04_Creating_the_64-bit_configuration.html"&gt;Lesson 04.&lt;/A&gt; Creating the 64-bit configuration.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Building a 64-bit application." href="http://www.viva64.com/lessons-x64/05_Building_a_64-bit_application.html"&gt;Lesson 05.&lt;/A&gt; Building a 64-bit application.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Errors in 64-bit code." href="http://www.viva64.com/lessons-x64/06_Errors_in_64-bit_code.html"&gt;Lesson 06.&lt;/A&gt; Errors in 64-bit code.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="The issues of detecting 64-bit errors." href="http://www.viva64.com/lessons-x64/07_The_issues_of_detecting_64-bit_errors.html"&gt;Lesson 07.&lt;/A&gt; The issues of detecting 64-bit errors.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Static analysis for detecting 64-bit errors." href="http://www.viva64.com/lessons-x64/08_Static_analysis.html"&gt;Lesson 08.&lt;/A&gt; Static analysis for detecting 64-bit errors.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Pattern 01. Magic numbers." href="http://www.viva64.com/lessons-x64/09_Pattern_01_Magic_numbers.html"&gt;Lesson 09.&lt;/A&gt; Pattern 01. Magic numbers.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Pattern 02. Functions with variable number of arguments." href="http://www.viva64.com/lessons-x64/10_Pattern_02_Printf.html"&gt;Lesson 10.&lt;/A&gt; Pattern 02. Functions with variable number of arguments.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Pattern 03. Shift operations." href="http://www.viva64.com/lessons-x64/11_Pattern_03_Shift_operations.html"&gt;Lesson 11.&lt;/A&gt; Pattern 03. Shift operations.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Pattern 04. Virtual functions." href="http://www.viva64.com/lessons-x64/12_Pattern_04_Virtual_functions.html"&gt;Lesson 12.&lt;/A&gt; Pattern 04. Virtual functions.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Pattern 05. Address arithmetic." href="http://www.viva64.com/lessons-x64/13_Pattern_05_Address_arithmetic.html"&gt;Lesson 13.&lt;/A&gt; Pattern 05. Address arithmetic.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Pattern 06. Changing an array's type." href="http://www.viva64.com/lessons-x64/14_Pattern_06_Changing_an_arrays_type.html"&gt;Lesson 14.&lt;/A&gt; Pattern 06. Changing an array's type.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Pattern 07. Pointer packing." href="http://www.viva64.com/lessons-x64/15_Pattern_07_Pointer_packing.html"&gt;Lesson 15.&lt;/A&gt; Pattern 07. Pointer packing.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Pattern 08. Memsize-types in unions." href="http://www.viva64.com/lessons-x64/16_Pattern_08_Memsize-types_in_unions.html"&gt;Lesson 16.&lt;/A&gt; Pattern 08. Memsize-types in unions.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Pattern 09. Mixed arithmetic." href="http://www.viva64.com/lessons-x64/17_Pattern_09_Mixed_arithmetic.html"&gt;Lesson 17.&lt;/A&gt; Pattern 09. Mixed arithmetic.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Pattern 10. Storage of integer values in double." href="http://www.viva64.com/lessons-x64/18_Pattern_10_Memsize_and_double.html"&gt;Lesson 18.&lt;/A&gt; Pattern 10. Storage of integer values in double.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Pattern 11. Serialization and data interchange." href="http://www.viva64.com/lessons-x64/19_Pattern_11_Serialization.html"&gt;Lesson 19.&lt;/A&gt; Pattern 11. Serialization and data interchange.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Pattern 12. Exceptions." href="http://www.viva64.com/lessons-x64/20_Pattern_12_Exceptions.html"&gt;Lesson 20.&lt;/A&gt; Pattern 12. Exceptions.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Pattern 13. Data alignment." href="http://www.viva64.com/lessons-x64/21_Pattern_13_Data_alignment.html"&gt;Lesson 21.&lt;/A&gt; Pattern 13. Data alignment.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Pattern 14. Overloaded functions." href="http://www.viva64.com/lessons-x64/22_Pattern_14_Overloaded_functions.html"&gt;Lesson 22.&lt;/A&gt; Pattern 14. Overloaded functions.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Pattern 15. Growth of structures' sizes." href="http://www.viva64.com/lessons-x64/23_Pattern_15_Growth_of_structures_sizes.html"&gt;Lesson 23.&lt;/A&gt; Pattern 15. Growth of structures' sizes.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Phantom errors." href="http://www.viva64.com/lessons-x64/24_Phantom_errors.html"&gt;Lesson 24.&lt;/A&gt; Phantom errors.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Working with patterns of 64-bit errors in practice." href="http://www.viva64.com/lessons-x64/25_Working_with_patterns.html"&gt;Lesson 25.&lt;/A&gt; Working with patterns of 64-bit errors in practice.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Optimization of 64-bit programs." href="http://www.viva64.com/lessons-x64/26_Optimization.html"&gt;Lesson 26.&lt;/A&gt; Optimization of 64-bit programs.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Peculiarities of creating installers for a 64-bit environment." href="http://www.viva64.com/lessons-x64/27_Creating_installers.html"&gt;Lesson 27.&lt;/A&gt; Peculiarities of creating installers for a 64-bit environment.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Estimating the cost of 64-bit migration of C/C++ applications." href="http://www.viva64.com/lessons-x64/28_Estimating_the_cost.html"&gt;Lesson 28.&lt;/A&gt; Estimating the cost of 64-bit migration of C/C++ applications.&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;</description>
    <pubDate>Mon, 19 Jul 2010 05:25:28 GMT</pubDate>
    <dc:creator>AndreyKarpov</dc:creator>
    <dc:date>2010-07-19T05:25:28Z</dc:date>
    <item>
      <title>difference between win32 programming and 64 bit programming</title>
      <link>https://community.intel.com/t5/Software-Archive/difference-between-win32-programming-and-64-bit-programming/m-p/777862#M4921</link>
      <description>Dear!&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;what is difference between win32 programming and 64 bid programming? MFC support 64 bit programming or not.&lt;/DIV&gt;</description>
      <pubDate>Sun, 18 Jul 2010 10:33:20 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/difference-between-win32-programming-and-64-bit-programming/m-p/777862#M4921</guid>
      <dc:creator>rabintech</dc:creator>
      <dc:date>2010-07-18T10:33:20Z</dc:date>
    </item>
    <item>
      <title>difference between win32 programming and 64 bit programming</title>
      <link>https://community.intel.com/t5/Software-Archive/difference-between-win32-programming-and-64-bit-programming/m-p/777863#M4922</link>
      <description>&lt;P&gt;&lt;A href="http://www.viva64.com/articles/x64-lessons/"&gt;Lessons on development of 64-bit C/C++ applications&lt;/A&gt;&lt;/P&gt;&lt;P&gt;The course is devoted to creation of 64-bit applications in C/C++ language and is intended for the Windows application developers who use Visual Studio 2005/2008/2010 environment. Developers working with other 64-bit operating systems will learn much interesting as well. The course will consider all the steps of creating a new safe 64-bit application or migrating the existing 32-bit code to a 64-bit system. &lt;/P&gt;&lt;P&gt;The course is composed of 28 lessons devoted to introduction to 64-bit systems, issues of building 64-bit applications, methods of searching errors specific to 64-bit code and code optimization. Such questions are also considered as estimate of the cost of moving to 64-bit systems and rationality of this move.&lt;/P&gt;&lt;DIV style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;" id="_mcePaste"&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;Course
contents:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;UL&gt;&lt;LI&gt;&lt;A title="What 64-bit systems are." href="http://www.viva64.com/lessons-x64/01_What_64-bit_systems_are.html"&gt;Lesson 01.&lt;/A&gt; What 64-bit systems are.&lt;/LI&gt;&lt;/UL&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Support of 32-bit applications." href="http://www.viva64.com/lessons-x64/02_Support_of_32-bit_applications.html"&gt;Lesson
02.&lt;/A&gt; Support of 32-bit applications.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Porting code to 64-bit systems. The pros and cons." href="http://www.viva64.com/lessons-x64/03_Porting_code__The_pros_and_cons.html"&gt;Lesson
03.&lt;/A&gt; Porting code to 64-bit systems. The pros and cons.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Creating the 64-bit configuration." href="http://www.viva64.com/lessons-x64/04_Creating_the_64-bit_configuration.html"&gt;Lesson
04.&lt;/A&gt; Creating the 64-bit configuration.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Building a 64-bit application." href="http://www.viva64.com/lessons-x64/05_Building_a_64-bit_application.html"&gt;Lesson
05.&lt;/A&gt; Building a 64-bit application.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Errors in 64-bit code." href="http://www.viva64.com/lessons-x64/06_Errors_in_64-bit_code.html"&gt;Lesson
06.&lt;/A&gt; Errors in 64-bit code.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="The issues of detecting 64-bit errors." href="http://www.viva64.com/lessons-x64/07_The_issues_of_detecting_64-bit_errors.html"&gt;Lesson
07.&lt;/A&gt; The issues of detecting 64-bit errors.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Static analysis for detecting 64-bit errors." href="http://www.viva64.com/lessons-x64/08_Static_analysis.html"&gt;Lesson
08.&lt;/A&gt; Static analysis for detecting 64-bit errors.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Pattern 01. Magic numbers." href="http://www.viva64.com/lessons-x64/09_Pattern_01_Magic_numbers.html"&gt;Lesson
09.&lt;/A&gt; Pattern 01. Magic numbers.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Pattern 02. Functions with variable number of arguments." href="http://www.viva64.com/lessons-x64/10_Pattern_02_Printf.html"&gt;Lesson
10.&lt;/A&gt; Pattern 02. Functions with variable number of arguments.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Pattern 03. Shift operations." href="http://www.viva64.com/lessons-x64/11_Pattern_03_Shift_operations.html"&gt;Lesson
11.&lt;/A&gt; Pattern 03. Shift operations.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Pattern 04. Virtual functions." href="http://www.viva64.com/lessons-x64/12_Pattern_04_Virtual_functions.html"&gt;Lesson
12.&lt;/A&gt; Pattern 04. Virtual functions.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Pattern 05. Address arithmetic." href="http://www.viva64.com/lessons-x64/13_Pattern_05_Address_arithmetic.html"&gt;Lesson
13.&lt;/A&gt; Pattern 05. Address arithmetic.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Pattern 06. Changing an array's type." href="http://www.viva64.com/lessons-x64/14_Pattern_06_Changing_an_arrays_type.html"&gt;Lesson
14.&lt;/A&gt; Pattern 06. Changing an array's type.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Pattern 07. Pointer packing." href="http://www.viva64.com/lessons-x64/15_Pattern_07_Pointer_packing.html"&gt;Lesson
15.&lt;/A&gt; Pattern 07. Pointer packing.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Pattern 08. Memsize-types in unions." href="http://www.viva64.com/lessons-x64/16_Pattern_08_Memsize-types_in_unions.html"&gt;Lesson
16.&lt;/A&gt; Pattern 08. Memsize-types in unions.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Pattern 09. Mixed arithmetic." href="http://www.viva64.com/lessons-x64/17_Pattern_09_Mixed_arithmetic.html"&gt;Lesson
17.&lt;/A&gt; Pattern 09. Mixed arithmetic.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Pattern 10. Storage of integer values in double." href="http://www.viva64.com/lessons-x64/18_Pattern_10_Memsize_and_double.html"&gt;Lesson
18.&lt;/A&gt; Pattern 10. Storage of integer values in double.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Pattern 11. Serialization and data interchange." href="http://www.viva64.com/lessons-x64/19_Pattern_11_Serialization.html"&gt;Lesson
19.&lt;/A&gt; Pattern 11. Serialization and data interchange.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Pattern 12. Exceptions." href="http://www.viva64.com/lessons-x64/20_Pattern_12_Exceptions.html"&gt;Lesson
20.&lt;/A&gt; Pattern 12. Exceptions.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Pattern 13. Data alignment." href="http://www.viva64.com/lessons-x64/21_Pattern_13_Data_alignment.html"&gt;Lesson
21.&lt;/A&gt; Pattern 13. Data alignment.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Pattern 14. Overloaded functions." href="http://www.viva64.com/lessons-x64/22_Pattern_14_Overloaded_functions.html"&gt;Lesson
22.&lt;/A&gt; Pattern 14. Overloaded functions.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Pattern 15. Growth of structures' sizes." href="http://www.viva64.com/lessons-x64/23_Pattern_15_Growth_of_structures_sizes.html"&gt;Lesson
23.&lt;/A&gt; Pattern 15. Growth of structures' sizes.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Phantom errors." href="http://www.viva64.com/lessons-x64/24_Phantom_errors.html"&gt;Lesson
24.&lt;/A&gt; Phantom errors.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Working with patterns of 64-bit errors in practice." href="http://www.viva64.com/lessons-x64/25_Working_with_patterns.html"&gt;Lesson
25.&lt;/A&gt; Working with patterns of 64-bit errors in practice.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Optimization of 64-bit programs." href="http://www.viva64.com/lessons-x64/26_Optimization.html"&gt;Lesson
26.&lt;/A&gt; Optimization of 64-bit programs.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Peculiarities of creating installers for a 64-bit environment." href="http://www.viva64.com/lessons-x64/27_Creating_installers.html"&gt;Lesson
27.&lt;/A&gt; Peculiarities of creating installers for a 64-bit environment.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN style="mso-ansi-language: EN-US;" lang="EN-US"&gt;&lt;LI&gt;&lt;A title="Estimating the cost of 64-bit migration of C/C++ applications." href="http://www.viva64.com/lessons-x64/28_Estimating_the_cost.html"&gt;Lesson
28.&lt;/A&gt; Estimating the cost of 64-bit migration of C/C++ applications.&lt;/LI&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;

&lt;/DIV&gt;

&lt;P&gt;Course contents:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;A title="What 64-bit systems are." href="http://www.viva64.com/lessons-x64/01_What_64-bit_systems_are.html"&gt;Lesson 01.&lt;/A&gt; What 64-bit systems are.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Support of 32-bit applications." href="http://www.viva64.com/lessons-x64/02_Support_of_32-bit_applications.html"&gt;Lesson 02.&lt;/A&gt; Support of 32-bit applications.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Porting code to 64-bit systems. The pros and cons." href="http://www.viva64.com/lessons-x64/03_Porting_code__The_pros_and_cons.html"&gt;Lesson 03.&lt;/A&gt; Porting code to 64-bit systems. The pros and cons.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Creating the 64-bit configuration." href="http://www.viva64.com/lessons-x64/04_Creating_the_64-bit_configuration.html"&gt;Lesson 04.&lt;/A&gt; Creating the 64-bit configuration.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Building a 64-bit application." href="http://www.viva64.com/lessons-x64/05_Building_a_64-bit_application.html"&gt;Lesson 05.&lt;/A&gt; Building a 64-bit application.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Errors in 64-bit code." href="http://www.viva64.com/lessons-x64/06_Errors_in_64-bit_code.html"&gt;Lesson 06.&lt;/A&gt; Errors in 64-bit code.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="The issues of detecting 64-bit errors." href="http://www.viva64.com/lessons-x64/07_The_issues_of_detecting_64-bit_errors.html"&gt;Lesson 07.&lt;/A&gt; The issues of detecting 64-bit errors.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Static analysis for detecting 64-bit errors." href="http://www.viva64.com/lessons-x64/08_Static_analysis.html"&gt;Lesson 08.&lt;/A&gt; Static analysis for detecting 64-bit errors.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Pattern 01. Magic numbers." href="http://www.viva64.com/lessons-x64/09_Pattern_01_Magic_numbers.html"&gt;Lesson 09.&lt;/A&gt; Pattern 01. Magic numbers.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Pattern 02. Functions with variable number of arguments." href="http://www.viva64.com/lessons-x64/10_Pattern_02_Printf.html"&gt;Lesson 10.&lt;/A&gt; Pattern 02. Functions with variable number of arguments.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Pattern 03. Shift operations." href="http://www.viva64.com/lessons-x64/11_Pattern_03_Shift_operations.html"&gt;Lesson 11.&lt;/A&gt; Pattern 03. Shift operations.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Pattern 04. Virtual functions." href="http://www.viva64.com/lessons-x64/12_Pattern_04_Virtual_functions.html"&gt;Lesson 12.&lt;/A&gt; Pattern 04. Virtual functions.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Pattern 05. Address arithmetic." href="http://www.viva64.com/lessons-x64/13_Pattern_05_Address_arithmetic.html"&gt;Lesson 13.&lt;/A&gt; Pattern 05. Address arithmetic.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Pattern 06. Changing an array's type." href="http://www.viva64.com/lessons-x64/14_Pattern_06_Changing_an_arrays_type.html"&gt;Lesson 14.&lt;/A&gt; Pattern 06. Changing an array's type.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Pattern 07. Pointer packing." href="http://www.viva64.com/lessons-x64/15_Pattern_07_Pointer_packing.html"&gt;Lesson 15.&lt;/A&gt; Pattern 07. Pointer packing.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Pattern 08. Memsize-types in unions." href="http://www.viva64.com/lessons-x64/16_Pattern_08_Memsize-types_in_unions.html"&gt;Lesson 16.&lt;/A&gt; Pattern 08. Memsize-types in unions.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Pattern 09. Mixed arithmetic." href="http://www.viva64.com/lessons-x64/17_Pattern_09_Mixed_arithmetic.html"&gt;Lesson 17.&lt;/A&gt; Pattern 09. Mixed arithmetic.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Pattern 10. Storage of integer values in double." href="http://www.viva64.com/lessons-x64/18_Pattern_10_Memsize_and_double.html"&gt;Lesson 18.&lt;/A&gt; Pattern 10. Storage of integer values in double.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Pattern 11. Serialization and data interchange." href="http://www.viva64.com/lessons-x64/19_Pattern_11_Serialization.html"&gt;Lesson 19.&lt;/A&gt; Pattern 11. Serialization and data interchange.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Pattern 12. Exceptions." href="http://www.viva64.com/lessons-x64/20_Pattern_12_Exceptions.html"&gt;Lesson 20.&lt;/A&gt; Pattern 12. Exceptions.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Pattern 13. Data alignment." href="http://www.viva64.com/lessons-x64/21_Pattern_13_Data_alignment.html"&gt;Lesson 21.&lt;/A&gt; Pattern 13. Data alignment.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Pattern 14. Overloaded functions." href="http://www.viva64.com/lessons-x64/22_Pattern_14_Overloaded_functions.html"&gt;Lesson 22.&lt;/A&gt; Pattern 14. Overloaded functions.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Pattern 15. Growth of structures' sizes." href="http://www.viva64.com/lessons-x64/23_Pattern_15_Growth_of_structures_sizes.html"&gt;Lesson 23.&lt;/A&gt; Pattern 15. Growth of structures' sizes.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Phantom errors." href="http://www.viva64.com/lessons-x64/24_Phantom_errors.html"&gt;Lesson 24.&lt;/A&gt; Phantom errors.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Working with patterns of 64-bit errors in practice." href="http://www.viva64.com/lessons-x64/25_Working_with_patterns.html"&gt;Lesson 25.&lt;/A&gt; Working with patterns of 64-bit errors in practice.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Optimization of 64-bit programs." href="http://www.viva64.com/lessons-x64/26_Optimization.html"&gt;Lesson 26.&lt;/A&gt; Optimization of 64-bit programs.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Peculiarities of creating installers for a 64-bit environment." href="http://www.viva64.com/lessons-x64/27_Creating_installers.html"&gt;Lesson 27.&lt;/A&gt; Peculiarities of creating installers for a 64-bit environment.&lt;/LI&gt;
&lt;LI&gt;&lt;A title="Estimating the cost of 64-bit migration of C/C++ applications." href="http://www.viva64.com/lessons-x64/28_Estimating_the_cost.html"&gt;Lesson 28.&lt;/A&gt; Estimating the cost of 64-bit migration of C/C++ applications.&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 19 Jul 2010 05:25:28 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/difference-between-win32-programming-and-64-bit-programming/m-p/777863#M4922</guid>
      <dc:creator>AndreyKarpov</dc:creator>
      <dc:date>2010-07-19T05:25:28Z</dc:date>
    </item>
  </channel>
</rss>

