کرم های کامپیوتر

کرم های کامپیوتر

کلی مطلب داریم براتون درباره کامپیوتر و برنامه نویسی.

ربات تلگرامی ما
آخرین نظرات
  • ۱ ارديبهشت ۹۶، ۱۱:۰۲ - Farzaneh
    Ubuntu
  • ۲۸ فروردين ۹۶، ۰۱:۳۶ - younes RayanFar
    opensuse


۳ مطلب در دی ۱۳۹۵ ثبت شده است

قبلا تکه کد مشابهی رو به زبان سی فرستاده بودم. این همونه اما به زبان پایتون.

#!/usr/bin/python3
'''
HexView.Py - A simple File Viewer in Hexadecimal format.
Author: FarooghKZ
Under GPL3+. THIS SOFTWARE COMES WITH NO WARRENTY FROM MAIN AUTHOR.
'''

import sys # I inlcude this to use sys.exit() and sys.argv

def showhelp(): # this function shows usage of program
    print("Usage: hexview.py file_path\n\tfile_path: Path of file to view.");
    sys.exit()

if '-h' in sys.argv: #shows help if something like this passed to program: 'hexview.py -h'
    showhelp()

path = sys.argv[1]
filestream = None
fbytes = None

try:
    filestream = open(path,'br') # Open the file in Binary mode for Reading(br)
    fbytes = filestream.read() # Read all bytes from the file 
finally:
    if filestream:
        filestream.close()

rown = 0 
print('')
for b in fbytes:
    s = hex(b).upper()
    s = s.replace('0X','')# "0XBA" => "BA"

    if len(s) == 1: 
        print('0', end='')
    print(s, end=' ')

    rown += 1
    if (rown % 27) == 0:
        print('')

print("\n") # prints 2 newline

پیوند تکه کد در گیت هاب گیست ( برای دریافت به اینجا بروید)

  • فاروق کریمی زاده

🎈​🎇laughتولد یک سالگی وبلاگمون مبارکlaugh​🎇🎈

 

عکسمون معلوم  نیست :-(

 

  • بهنام سیم جو

این تکه کد ساده یک مشاهده گر ساده هست که تک تک بایت های فایل را داخل مبنای شانزده(Hex) نمایش میده.

// hexview.c
// Author: FarooghKZ
// It's free software under GPL3+ and comes WITHOUT ANY WARRENTY FROM MAIN AUTHOR
#include <stdio.h>

int main(int argc, char *argv[]){
    if (argc == 1 || !strcmp(argv[1], "-h")){
        printf("Usage: hexview file_path\n");
        return 0;
    }
    FILE *fs = fopen(argv[1], "r");
    long byte_number = 0;
    while(1){
        if ((++byte_number % 26) == 0) // goes to new line each 26 bytes
            printf("\n"); // you may remove this part and then use fold to split it into lines


        int t = getc(fs);
        if (t == EOF)
            break;

        printf("%.2X ", t);
    }
    printf("\n");
    return 0;
}

پیوند کد در گیت‌هاب گیست(برای دریافت به اینجا بروید)

  • فاروق کریمی زاده