Assembly

An assembly language (or assembler language) is a low-level programming language for a computer or other programmable device in which there is a very strong (generally one-to-one) correspondence between the language and the architecture's machine code instructions. Each assembly language is specific to a particular computer architecture, in contrast to most high-level programming languages, which are generally portable across multiple architectures, but require interpreting or compiling. Assembly language is converted into executable machine code by a utility program referred to as an assembler; the conversion process is referred to as assembly, or assembling the code.

Share tech news, updates, or what's on your mind.

Sign up to Post

At work today where we support an SDK (.net one) someone asked if the C# SDK was a "signed" .NET SDK.

I wasn't 100% sure what they were talking about but I thought this was on the right track:
https://docs.microsoft.com/en-us/dotnet/framework/app-domains/how-to-sign-an-assembly-with-a-strong-name

Can someone explain to me what this is about and why they would need it? And also how difficult would it be to turn my unsigned SDK into a signed SDK?

Thank you
0
[Webinar] How Hackers Steal Your Credentials
LVL 9
[Webinar] How Hackers Steal Your Credentials

Do You Know How Hackers Steal Your Credentials? Join us and Skyport Systems to learn how hackers steal your credentials and why Active Directory must be secure to stop them.

I'm programming Infineon TC29x Aurix Tricore Microcontroller based embedded system in 'C' language.
 
Consider stack starting at address 0x5000 0000.  The stack size is 0x1000.  

If I add 0x1000 to current stack pointer(Register A10) and store result in A10, then I should get underflow error.

What might be the code in assembly to change stack pointer?  something like following:

stw a10, 0x1000(a10)   # I'm not sure if stw is correct opcode ?

what are other options to create stack undeflow exception?
0
Do any one knows what HEX code i need to get the C: drive label

for diskette (a) i uze
 disk_buffer + 3h		; Disk label from Drive A:

Open in new window


but drive C: is harder to get.

disk_buffer	equ	24576
..
.
mov cx, 1				; Load first disk sector into RAM
mov dx, 0
mov bx, disk_buffer
	
mov ah, 2
mov al, 1
stc
int 13h					; BIOS load sector call

mov si, disk_buffer + 3h		; Disk label from Drive A:
call os_print_string
	

Open in new window


Tnx.
0
I inherited a C# application.  The development environment is Win10 64 bit, VS 2012 and the development machine has Microsoft Office Pro 2016 installed.  The problem is that the C# application has a lot of references to Microsoft.Office.Interop.Word which utilizes MS Office 2003 if I recall correctly (version 11 as opposed to version 14).

I can't get past this build error which states:

Assembly 'Microsoft.Office.Interop.Word, Version 14.0.0.0, culture = neutral, Public Key Token.......' which is a higher version than referenced assembly 'Office, Version=11.0.0.0, Culture neutral....."

I cannot remove the reference to either assembly without breaking a significant amount of the existing code.  I originally tried installing both and setting the 'Embed Interops Types = False' at the recommendation of .Net but that did not resolve the issue.

Any suggestions?
0
I have a table that has 4 triggers on it.
An api does an insert or update on the table and these triggers fire.

On that same server I have an assembly installed... which a function calls

How can I add a call to that assembly function after the LAST trigger fires?
Is there a way to determine the ORDER of the triggers...
And then should I add that function to the Trigger...??
0
HI All,

I have this powershell script and I need find a secure way of storing the password. I've tried :

$response = Read-host "What's your password?" -AsSecureString 
$Password = [Runtime.InteropServices.Marshal]::PtrToStringAuto([Runtime.InteropServices.Marshal]::SecureStringToBSTR($response)

Open in new window


and this will not work.

below is my script, how do I load the assembly, it prompts and error saying :

Unable to find type [Microsoft.VisualBasic.Interaction]. Make sure that the assembly that contains this type is loaded.
At line:1 char:1

this is the code
#Specifiy Local admin account name
$user = "mcadmin"
  
Add-Type -Assembly System.Web
$pass=[Web.Security.Membership]::GeneratePassword(20,0)
NET USER $user "$pass" /ADD /y
#Add user to local admin group
NET LOCALGROUP "Administrators" "$user" /add
#set password to never expire
WMIC USERACCOUNT WHERE "Name='$user'" SET PasswordExpires=FALSE
  
Write-Host "Username: $user" -foregroundcolor green -backgroundcolor black
Write-Host "Password: $pass" -foregroundcolor green -backgroundcolor black
Write-host "Server: $env:computername" -foregroundcolor green -backgroundcolor black

# Load the classes from KeePass.exe:
cd "\\smile01\Infrastructure\KeePass-2.34" | out-null
(Get-ChildItem -recurse $script:myinvocation.mycommand.path | Where-Object {($_.Extension -EQ ".dll") -or ($_.Extension -eq ".exe")} | ForEach-Object { $AssemblyName=$_.FullName; Try {[Reflection.Assembly]::LoadFile($AssemblyName) } 

Open in new window

0
He, i wanna add a .newmessage line under

	.message	db 'Hallo en welkom to installasie van pirom client', 0

Open in new window

but when adding jest a new line .      .message      db '....' ,0
do not works

: error: symbol `.message' redefined

;------------------------------------------------------
; Install screens 1 
;------------------------------------------------------
	BITS 16
	ORG 32768
	%INCLUDE 'pirom_dev.inc'

start:

        mov ax, .title_msg
	mov bx, .footer_msg
	mov cx, 10011111b	; Colour
	call os_draw_background

	mov si, .message
;	mov ax, .buffer
	call os_print_string
	
	.message	db 'Hallo en welkom voor de installasie van pirom', 0
	
	.title_msg	db 'Pirom Setup', 0
	.footer_msg	db 'Setup', 0

Open in new window

0
I have a dll .Net class that is loaded on SQL Server 2008R2

A function calls the dll and passes in parameters
How can I change those parameters to allow incoming nulls on a few of them?

<Microsoft.SqlServer.Server.SqlFunction>
    Public Shared Function GTNG(user As String, token As String, PID As String, OID As String, TSW_ID As String, FirstName As String,
    LastName As String, IsOwner As String, EmailAddress As String, AccomName As String, ... etc...etc...
0
Dear community,
We have Problems with active sync in Exchange 2016 CU5.
After a Migration from Exchange 2010 to Exchange 2016 CU5 the following error occours when we connect with active sync:

OWA is working!

exchange analyzer
Event code: 3008
Event message: A configuration error has occurred.
Event time: 07.07.2017 08:10:45
Event time (UTC): 07.07.2017 06:10:45
Event ID: d049c0dd0f3b4cc4986b58ec61b74869
Event sequence: 1
Event occurrence: 1
Event detail code: 0
 
Application information:
    Application domain: /LM/W3SVC/2/ROOT/Microsoft-Server-ActiveSync-4285-131438814449264551
    Trust level: Full
    Application Virtual Path: /Microsoft-Server-ActiveSync
    Application Path: C:\Program Files\Microsoft\Exchange Server\V15\ClientAccess\sync\
    Machine name: XXX
 
Process information:
    Process ID: 18536
    Process name: w3wp.exe
    Account name: IIS APPPOOL\DefaultAppPool
 
Exception information:
    Exception type: ConfigurationErrorsException
    Exception message: Could not load file or assembly 'Microsoft.Exchange.Security, Version=15.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified. (C:\Program Files\Microsoft\Exchange Server\V15\ClientAccess\sync\web.config line 251)
   at System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective)
   at …
0
I'm programming Infineon TC29x Aurix Tricore Microcontroller based embedded system in 'C' language.  

Consider stack starting address 0x5000 0000.  The stack size is 0x2000.  

If I take current stack pointer minus 0x2000, will that create stack exception?  If yes, what might be 'C' or assembly language code that will achieve this?

My thought is if I subtract negative 0x2000 from current stack pointer or add 0x2000 to current stack pointer, I'll be outside stack and stack exception will occur ?

 I need to set program counter to illegal address, i.e. 0x00FF FFFC.  Can this be done with assembly language instructions?
 If yes, please instrument assembly language instruction that would set program counter to 0x00FF FFFC while code is running.
0
Free Tool: Site Down Detector
LVL 9
Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

I'm trying to create illegal instruction reset.  

I'm programming Infineon TC29x Aurix Tricore Microcontroller based embedded system in 'C' language.  

I need to set program counter to illegal address, i.e. 0x00FF FFFC.  Can this be done with assembly language instructions?
If yes, please instrument assembly language instruction that would set program counter to 0x00FF FFFC while code is running.
0
I am attempting to register a remote machine on team services with Powershell. When I enter the script on the remote machine and attempt to run it, I get the error below: Cannot add type. The assembly 'System.IO.Compression.FileSystem' could not be found. I have copied the registration script from the Deployment Groups section on team services online.

The server that I am using is windows server 2008 R2. The script is below:

$ErrorActionPreference="Stop";If(-NOT ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole] “Administrator”)){ throw "Run command in Administrator PowerShell Prompt"};If(-NOT (Test-Path $env:SystemDrive\'vstsagent')){mkdir $env:SystemDrive\'vstsagent'}; cd $env:SystemDrive\'vstsagent'; for($i=1; $i -lt 100; $i++){$destFolder="A"+$i.ToString();if(-NOT (Test-Path ($destFolder))){mkdir $destFolder;cd $destFolder;break;}}; $agentZip="$PWD\agent.zip";(New-Object Net.WebClient).DownloadFile('https://github.com/Microsoft/vsts-agent/releases/download/v2.116.1/vsts-agent-win7-x64-2.116.1.zip', $agentZip);Add-Type -AssemblyName System.IO.Compression.FileSystem;[System.IO.Compression.ZipFile]::ExtractToDirectory($agentZip, "$PWD");.\config.cmd --deploymentgroup --agent $env:COMPUTERNAME --runasservice --work '_work' --url 'https://aaosprojects.visualstudio.com/' --projectname 'xxxxxxxProjects' --deploymentgroupname "xxxxxxxxxDeploymentGroup" ; Remove-Item $agentZip;
0
I am trying to create this Function from the assembly code below
(I have several integer and string finctions that work... I am trying to essentially return the datatable list to SQL)
But I am getting this message
CREATE FUNCTION for "EverywareTemplates" failed because T-SQL and CLR types for return value do not match.

CREATE FUNCTION [dbo].[EverywareTemplates] (@user NCHAR(200), @token NCHAR(200))
RETURNS Table (TemplateID INT, TemplateType NCHAR(200), TemplateName NCHAR(300)) WITH EXECUTE AS CALLER
AS EXTERNAL NAME [HelloEveryware].[HelloEveryware.PassIn].[MessageTemplates];

Open in new window


From This .Net assembly function
    <Microsoft.SqlServer.Server.SqlFunction>
    Public Shared Function MessageTemplates(user As String, token As String) As [b]DataTable[/b]
        Try
            Dim ret As New DataTable
            Dim api As New wsclientapi.Service
            ret = ConvertToDataTable(api.brkGetTemplates(user, token))
            Return ret
        Catch ex As Exception
            File.WriteAllText(Convert.ToString("D:\netAssemblies\errorfile.txt"), ex.Message + Environment.NewLine + Environment.NewLine + ex.StackTrace + Environment.NewLine + Environment.NewLine + ex.InnerException.Message + Environment.NewLine + ex.InnerException.StackTrace + Environment.NewLine + Environment.NewLine)
            Return Nothing
        End Try
    End Function

Open in new window

0
I have a CLR Assembly that I have loaded on two separate servers the exact same way.

On one server the function that calls the assembly works perfectly

On the other I get this message.
Makes no sense.

Cannot load dynamically generated serialization assembly. 
In some hosting environments assembly load functionality is restricted, consider using pre-generated serializer. 
Please see inner exception for more information.

Open in new window

0
Hide a control in a continuous form based on the value of the previous record?

The form has a Button call cmdEdit.  The cmdEdit represents the button, the value Service and the button are what should not show if the service value is the same.

cmdEdit Service       ServiceType1
cmdEdit Service      ServiceType2
cmdEdit Service   ServiceType3

This is what the form needs to display

cmdEdit Service ServiceType1
                         ServiceType2
                          ServiceType3
0
I'm trying to run a test SSIS package using DTEXEC.EXE.   The package, which ONLY has an Execute SQL in it, runs fine in Visual Studio Version 12.

When I run from command line using DTEXEC.EXE, i get the following error:  Mixed Mode Assembly is built against version 'v2.0.50727' of the runtime and cannot be loaded in the 4.0 runtime without additional configuration information

I've searched the web and found the suggestion to add useLegacyV2RuntimeActivationPolicy="true".  If that's true for me in SSIS, I do not know how to do it.
0
I have an assembly I added to SQL
It has 4 parameters in the vb code that are all string


In SQL Server I added the assembly...
But when I try and run this...
CREATE PROCEDURE [dbo].[HelloEveryware] (@user VARCHAR(100), @token VARCHAR(100), @PID VARCHAR(100),@ProspectID VARCHAR(100) )
--RETURNS BIT WITH EXECUTE AS CALLER
AS EXTERNAL NAME [HelloEveryware].[HelloEveryware.PassIn].[Confirmation];

I get this message
Msg 6552, Level 16, State 3, Procedure HelloEveryware, Line 1
CREATE PROCEDURE for "HelloEveryware" failed because T-SQL and CLR types for parameter "@user" do not match.

the VB side of this is...

Partial Public Class PassIn
    <Microsoft.SqlServer.Server.SqlFunction>
    Public Shared Function Confirmation(user As String, token As String, PID As String, ProspectID As String) As Int32
0
I have an array that identifies the level in the Tree that I want.  I know that I need to do a recursive routine, but I keep getting stuck.  I have the first node created.  Now I need to recursively explode the subnodes of each of the level 1 nodes.  Here is the data:
Seq      bom_level      Node_text
0      1      1__1100-079__UMBRELLA SUPPORT
1      2      2__1100-079-003__SUPPORT UMBRELLA
2      3      3__1100-079-003-001__TUBE STAND
3      4      4__TR3C-0150.0009__TUBE_RND_CARBON-C_1.50_.095
4      3      3__1100-079-003-002__PLATE BASE
5      3      3__1100-079-003-003__ANGLE SUPPORT
6      4      4__UA1C-0250.0200.0025__ANGLE_CARBON-H_2.50X2.00_.25
7      4      4__UA1C-0250.0200.0025__ANGLE_CARBON-H_2.50X2.00_.25
8      3      3__1100-079-003-004__BAR SUPPORT
9      4      4__BS1C-0050__BAR_SQR_CARBON-H_.50
10      2      2__O-059-215__U-BOLT
11      2      2__O-060-003-A__WASHER HARD
12      2      2__O-061-003__WASHER LOCK
13      2      2__O-005-016__SCREW HEX
14      2      2__O-062-009__NUT HEX
15      2      2__O-060-005-A__WASHER HARD
16      2      2__O-059-216__PIN QUICK RELEASE
17      2      2__B-005-052__UMBRELLA W/BRACKET
18      1      1__1100-133__BRAKE ASSEMBLY
19      2      2__D-001-035__CALIPER BRAKE
20      2      2__1100-056-002__DISC BRAKE
21      2      2__1100-056-003__PLATE BLOCK MOUNTING
22      2      2__1100-056-004__SCREW HEX
23      2      2__O-076-024-1__SCREW SOC
24      2      2__O-063-012-A__NUT LOCK
25      2      2__O-063-012-A__NUT LOCK
26      2      2__O-060-006-A__WASHER HARD
27      2      2__K-002-292__BOLT FLANGE
28      2      2__K-002-292__BOLT FLANGE
29      1      1__1100-338__COOLER OIL ELECTRIC COLD WEATHER
30      2      2__K-006-037__COOLER OIL REMOTE
31      2      2__B-004-078__SWITCH
32      2      …
0
I don't know how to start this program. Can anyone help me on this or give some ideas to solve this problem
0
Enroll in August's Course of the Month
LVL 9
Enroll in August's Course of the Month

August's CompTIA IT Fundamentals course includes 19 hours of basic computer principle modules and prepares you for the certification exam. It's free for Premium Members, Team Accounts, and Qualified Experts!

Have a user when a new computer who is using a Winforms application with Crystal Reports on it that was deployed.  An installer is NOT used.  Files are deployed.  When user runs the application they receive the above error.

https://wiki.scn.sap.com/wiki/display/BOBJ/Crystal+Reports%2C+Developer+for+Visual+Studio+Downloads

Shouldn't the EXE solve the issue?  Or download the MSI?  Which file should be installed on the computer.
0
Hello,

When attempting to access a DLL file using code below,

 Dim frm1 As New AOP40A.Form1
 frm1.Show()

(Dll file was added in the Reference section.)

I receive the following error:

An unhandled exception of type 'System.BadImageFormatException' occurred in System.Windows.Forms.dll

Additional information: Could not load file or assembly 'AOP40SearchA, Version=1.0.6233.29534, Culture=neutral, PublicKeyToken=null' or one of its dependencies. An attempt was made to load a program with an incorrect format.

Also received a message indicating:

The call stack contains only external code:

You need to turn off Just My Code and load symbols in order  view source for this location. How do I disable Just My Code? Perhaps that would fix the error.

Thanks,  

Victor
0
I have a desktop vb.net application developed in VS 2010 with a SqlServer 2008 R2 back end which utilizes the Microsoft.SqlServer.Types assembly as a reference (copy local).  The application was working as expected.  I have just migrated to VS 2015 and SQL Server 2016.
I have set the .net framework to 4.6 and corrected the References within the project to the newest versions.  This would be Microsoft.SqlServer.Types (13.0) the old one was version 10.0.  The forms that utilize the tables with the HierarchyID data types fail with the datareader.getfieldtype error.  
So just for sanity I removed the version 13.0 assembly from the references and copied the older version 10 from another machine and added that one in as a reference where I had copied it (C: root directory).  And the application worked as expected.  Unfortunately, I don't want to have an older version of an assembly if I can avoid it.  Additionally, with the old version the deployment fails with an error of looking for the new version of the assembly.  
I have looked through many forums from VB to VS to SqlServer and although it seems folks have had similar problems, it does not appear there is a definitive answer to why the most current version of the Microsoft.SqlServer.Types is not functioning in the same manner as the version 10.
Any help would be greatly appreciated.
0
This code works on my local machine, but not the server.

Dim Odrive As System.IO.DriveInfo
Odrive = My.Computer.FileSystem.GetDriveInfo("H:\")

The code is enclosed in a try catch block, but I still get an unhandled error exception "Input string not in the correct format".  Here is the stack information.  

See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.FormatException: Input string was not in a correct format.
   at System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal)
   at System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info)
   at System.Convert.ToInt32(String value)
   at DiskRoom.Form1.Form1_Load(Object sender, EventArgs e)
   at System.EventHandler.Invoke(Object sender, EventArgs e)
   at System.Windows.Forms.Form.OnLoad(EventArgs e)
   at System.Windows.Forms.Form.OnCreateControl()
   at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
   at System.Windows.Forms.Control.CreateControl()
   at System.Windows.Forms.Control.WmShowWindow(Message& m)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   at System.Windows.Forms.ContainerControl.WndProc(Message& m)
   at System.Windows.Forms.Form.WmShowWindow(Message& m)
   at …
0
When I disassemble my assembly code with gdb, the two pointers that point to the data section 0x1000 up are with the .text section. However there are these two: strheq and andeq in front of it.  Will the two addresses be loaded into the memory or will there be some other instructions?

Thanks

Ze
0
I can't find the answer to this question anywhere.

I know the Control Unit takes the opcode (6-bit field) from the instruction to generate the control signals in the datapath. What I don't understand is how the opcode determines all of the control signals (e.g. MemRead, RedDet, ALUop, MemWrite...)

Please help me understand this since I'm working on an assignment that simulates a processor and a single-cycle datapath (written in C). There is a function where I need to assign values to all the control signals and the only information given is the opcode.

Thanks!

P.S. Do I need to know the opcode for every MIPS instruction in order to know the values of the control signals?
0

Assembly

An assembly language (or assembler language) is a low-level programming language for a computer or other programmable device in which there is a very strong (generally one-to-one) correspondence between the language and the architecture's machine code instructions. Each assembly language is specific to a particular computer architecture, in contrast to most high-level programming languages, which are generally portable across multiple architectures, but require interpreting or compiling. Assembly language is converted into executable machine code by a utility program referred to as an assembler; the conversion process is referred to as assembly, or assembling the code.

Top Experts In
Assembly
<
Monthly
>